English version

RSS

Процессы и потоки

Автор: Артур Вартанов
Аннотация: Функция GetModuleFileName возвращает полный путь и имя исполняемого файла. Пример ее использования смотри ниже.

Ключевые слова:
Автор: Кодт
Аннотация: Здравствуйте, -MyXa-, Вы писали:<br /> <span class='lineQuote level1'><br /> MX&gt;Чем значение, возвращаемое функцией GetModuleFileName, лучше чем argv[0]?</span><br /> <br /> Тем, что содержимое argv[0] может содержать всё, что угодно по желанию шелла.<br /> Пример<br /> <pre class='c'><code><span class='kw'>int</span> main(<span class='kw'>int</span> argc, <span class='kw'>char</span>* argv[]) { printf(<span class='str'>"path = %s\n"</span>, argv[0]); }</code></pre><br /> запускаем<br /> ...

Ключевые слова:
Автор: Александр Федотов
Аннотация: Статья рассказывает, как корректно завершить другое приложение, учитывая возможность зависания этого приложения. Также рассматривается вопрос завершения 16-битных приложений в Windows NT.

Ключевые слова:
Автор: Александр Федотов
Аннотация: В статье рассматривается принудительное завершение процессов с использованием функции TerminateProcess с учетом ограничений, накладываемых системой безопасности Windows NT. Также рассматривается завершение дерева процессов и завершение 16-битных процессов в Windows NT.

Ключевые слова:
Автор: Александр Федотов
Аннотация: В статье рассматривается несколько способов перечисления процессов в Windows различных версий, включая методы, пригодные для перечисления процессов на другом компьютере.

Ключевые слова:
Автор: Александр Федотов
Аннотация: Статья рассказывает, как получить список приложений, аналогичный списку, отображаемому Windows NT Task Manager.

Ключевые слова:
Автор: Александр Федотов
Аннотация: Статья рассказывает как получить список 16-битных задач в среде Windows NT с использованием функций, предоставляемых VDMDBG.DLL.

Ключевые слова:
Автор: Александр Федотов
Аннотация: В статье рассматривается два метода, позволяющие определить, что приложение зависло, т.е. перестало обрабатывать сообщения.

Ключевые слова:
Автор: Артур Вартанов
Аннотация: Существует несколько способов запуска одной программы из другой.

Ключевые слова:
Автор: Alex Fedotov
Аннотация: Здравствуйте, Contact, Вы писали:<br /> <span class='lineQuote level1'><br /> C&gt;Если я не ошибаюсь, данный подход предполагает программное определение</span><br /> <span class='lineQuote level1'>C&gt;вхождения пользователя в группу администраторы с последующим... чем?</span><br /> <span class='lineQuote level1'>C&gt;1) поменять владельца процесса нельзя (можно???)</span><br /> <span class='lineQuote level1'>C&gt;=&gt; необходимо как-то показать диалог ранэс (как?) и получить ре...</span>

Ключевые слова:
Автор: Dr. Joseph M. Newcomer
Перевод: Алексей Остапенко
Источник: Avoiding Multiple Instances of an Application
Аннотация: В статье подробно рассматриваются различные способы ограничения числа запущенных копий приложения одной. Указываются недостатки и даже ошибки во многих известных методах решения задачи, которые постоянно фигурируют в конференциях и в Сети. Кроме того, указывает на различные трактовки понятия "одна копия приложения" и демонстрирует правильное решение для каждого из случаев.

Ключевые слова:
Автор: Алексей Ширшов
Источник: RSDN Magazine #3
Аннотация: Переполнение стека – одна из самых сложных ошибок, восстановление после которой практически невозможно. По существу эта ошибка считается фатальной, и единственное, что может сделать приложение, обрабатывая ее, выдать какое-либо сообщение об ошибке или записать его в лог. Никакой серьезной работы проделать невозможно, т.к. обработчик вызывается на уже «умирающем» стеке. В этой статье рассматривается, как подменить текущий стек на свой собственный. Более подробно цели описаны в следующем разделе. Все материалы относятся к операционной системе Windows 2000 и WindowsXP.

Ключевые слова:

Многопоточность

Авторы: Алексей Колосов
Евгений Рыжков
Андрей Карпов
Источник: RSDN Magazine #2-2008
Аннотация: С распространением многоядерных систем задача параллельного программирования становится все более и более актуальной. Данная область, однако, является новой даже для большинства опытных программистов. Существующие компиляторы и анализаторы кода позволяют находить некоторые ошибки, возникающие при разработке параллельного кода. Многие ошибки никак не диагностируются. В данной статье приводится описание ряда ошибок, приводящих к некорректному поведению параллельных программ, созданных на основе технологии OpenMP.

Ключевые слова: OpenMP
Автор: Тепляков Сергей Владимирович
Источник: RSDN Magazine #4-2010
Аннотация: В статье рассматриваются новые возможности асинхронного программирования доступные в новой версии языка программирования C#.

Ключевые слова: C# 5; асинхронное программирование; многопоточность
Автор: Intel
Источник: RSDN Magazine #3-2004
Аннотация: Современные операционные системы (OC) нацелены на наиболее эффективное использование ресурсов компьютера. По большей части эффективность достигается за счет разделения ресурсов компьютера между несколькими процессами (многозадачность). Такое крупномасштабное разделение ресурсов обеспечивается операционными системами без каких-либо действий со стороны приложений или процессов. Процессы могут выполняться одновременно за счет переключения центрального процессора (или нескольких процессоров) между ними. Последние версии OC предоставляют механизмы, позволяющие приложениям управлять ресурсами компьютера и распределять их с большей степенью детализации, т.е. на уровне потоков. По аналогии с многозадачными операционными системами, которые могут одновременно выполнять несколько задач путем запуска нескольких процессов, процесс может в свою очередь выполнять несколько задач за счет использования нескольких потоков. В данном документе обсуждаются способы применения потоков для повышения производительности приложений. Также здесь представлена методика распараллеливания последовательных приложений.

Ключевые слова: Intel Threading Tools, Thread
Автор: Павел Блудов
Источник: RSDN Magazine #6-2004
Аннотация: В статье рассматриваются аспекты работы с критическими секциями, их внутреннее устройство и способы отладки

Ключевые слова: Critical Section, CriticalSection, EnterCriticalSection, LeaveCriticalSection
Автор: Alex Fedotov
Аннотация: <span class='lineQuote level1'>K&gt;"Для использования спин-блокировки в критической секции нужно инициализи ровать счетчик циклов, вызвав: </span><br /> <span class='lineQuote level1'><br /> K&gt;BOOL InitalizeCriticalSectionAndSpinCount( PCRITICAL_SECTION pcs, DWORD dwSpinCount); </span><br /> <span class='lineQuote level1'><br /> K&gt;Как и в InitializeCriticalSection, первый параметр этой функции — адрес структуры критической се...</span>

Ключевые слова:
Автор: Роман Хациев
Аннотация: Довольно давно я прочитал статью, автор которой объединил две концепции - многозадачность и объектно-ориентированное программирование. В результате получились так называемые "живые объекты". Идея крайне проста - при инициализации объекта создается отдельный поток и объект в нем живет своей жизнью, а создатель объекта по мере необходимости получает информацию о состоянии объекта из его свойств.

Ключевые слова:
Автор: Алекс Jenter
Аннотация: Сейчас игнорировать возможности многозадачности, которые предоставляет Windows, не может себе позволить ни один уважающий себя программист. Многозадачность - это вовсе не так сложно, как кажется на первый взгляд, и эта статья призвана вас в этом убедить. В ней рассматриваются основные концепции организации многозадачной среды - процессы и потоки, а также подробно описывается проблема синхронизации потоков и ее решение.

Ключевые слова:
Автор: MaximE
Аннотация: ethan hunt wrote:<br /> <span class='lineQuote level1'><br /> &gt; Господа,</span><br /> <span class='lineQuote level1'>&gt; извиняюсь за тупость, но почему в отдельный поток можно кидать только статическую функцию-член класса. До конца не понимаю (может из-за недосыпания).</span><br /> <br /> Потому, что статическая функция-член имеет такой же тип, как и обычная ф-ция (в отличее от нестатической фун-ции...

Ключевые слова:
Автор: Алексей Ширшов
Источник: RSDN Magazine #2-2003
Аннотация: Статья посвящена системным механизмам, организующим (или помогающим организовать) пул потоков. Рассматриваются базовые, универсальные сервисы, с помощью которых можно реализовывать серверы для любых доступных механизмов взаимодействия сервера и клиента: сокеты, именованные каналы (named pipes), почтовые ящики (mailslots) и проч.

Ключевые слова: thread pool
Автор: Олег Зубарьков
Аннотация: STL и многие другие библиотеки написаны с учётом эффективности и удобства, но без учёта многопоточности процессов ( и это правильно ), но как же использовать эту кучу кода в многопоточных приложениях без написания эквивалентной кучи кода?

Ключевые слова:

Работа с потоками в C#

Автор: Joseph Albahari
Перевод: Алексей Кирюшкин
Источники: Threading in C#
базируется на книге
Joseph Albahari Ben Albahari "C# 3.0 in a Nutshell"
Материал предоставил: RSDN Magazine #1-2007
Аннотация: Подробно рассматривается работа с потоками - запуск, завершение, прерывание, блокировки, синхронизация, контексты синхронизации, особенности взаимодействия с апартаментами, а также потоковые возможности .NET - потоковые таймеры, пулы потоков, BackgroundWorker, асинхронные методы и делегаты. В статье использован материал из книги Joseph Albahari, Ben Albahari "C# 3.0 in a Nutshell" - http://www.oreilly.com/catalog/9780596527570/

Ключевые слова: C#,thread,wait handle, mutex, apartament
Автор: Joseph Albahari
Перевод: Алексей Кирюшкин
Источники: Threading in C#
базируется на книге
Joseph Albahari Ben Albahari "C# 3.0 in a Nutshell"
Материал предоставил: RSDN Magazine #2-2007
Аннотация: Окончание статьи, опубликованной в RSDN Magazine #1-2007. Рассматриваются особенности взаимодействия с апартаментами, потоковые таймеры, пулы потоков, BackgroundWorker, асинхронные методы и делегаты. В статье использован материал из книги Joseph Albahari, Ben Albahari "C# 3.0 in a Nutshell" - http://www.oreilly.com/catalog/9780596527570/

Ключевые слова: C#,thread,wait handle, mutex, apartament
Автор: Joseph Albahari
Перевод: Тепляков Сергей Владимирович
Источники: RSDN Magazine #3-2010
Threading in C#
Аннотация: В третьей части статьи рассматривается Parallel LINQ, класс Parallel, конструкции параллелизма задач, параллельные коллекции, а также структуры SpinLock и SpinWait. В статье использован материал из книги Joseph Albahari, Ben Albahari "C# 4.0 in a Nutshell" —  http://oreilly.com/catalog/9780596800963

Ключевые слова: Многопоточность; PLINQ, TPL; C#

Await && Locks - библиотека синхронизации потоков

Автор: Dmytro Sheyko
Источник: RSDN Magazine #3
Аннотация: Await && Locks – это библиотека синхронизации потоков. Необычная библиотека. Необычна она в том смысле, что она предоставляет не ряд классов или функций на все случаи жизни, – она предоставляет ряд конструкций, при помощи которых программист может более четко и ясно выражать свои намерения.

Ключевые слова: await, await_switch,await_case,await_timeout
Автор: Dmytro Sheyko
Источник: sourceforge.net
Аннотация: Прежде чем начать описание внутренностей Await && Locks, я хотел бы объяснить некоторые детали, которые могут показаться странными и неочевидными; а дизайн библиотеки – избыточным и хаотичным. Приведенные ниже действия касаются только проектирования на C++. Я сознательно использую эту комбинацию якобы несовместимых терминов C++ и проектирование, несмотря на то, что C++ считается языком кодирования, а для проектирования обычно используют другие средства, например UML. Это связано с тем, что язык кодирования, так или иначе, оказывает влияние на мышление программиста-проектировщика и как следствие на этап проектирования в целом.

Ключевые слова:
Автор: Dmytro Sheyko
Источник: sourceforge.net
Аннотация: Следует признать, что код, использующий библиотеку Await && Locks, не столь эффективен, насколько в принципе мог бы быть. Правда, этот недостаток относится больше именно к реализации. Тем не менее, это может стать решающим фактором при принятии решения, использовать ли данную библиотеку или нет. Обобщая, можно поставить вопрос так: «Стоят ли те преимущества, которые дает использование Await && Locks, тех накладных расходов, которые при этом возникнут?». Однозначный ответ я дать не могу. Это зависит от задач, которые собирается решать разработчик. Итак, в чем же заключаются недостатки, и какие выгоды сулит Await && Locks? Рассмотрим особенности данной библиотеки с разных сторон.

Ключевые слова: