Объекты и функциональные возможности работы с потоками
Обновлен: Ноябрь 2007
Среда .NET Framework содержит объекты, которые могут помочь в создании и управлении многопоточными приложениями. Управляемые потоки представлены классом Thread. Класс ThreadPool предоставляет возможность простого создания и управления многопоточными фоновыми задачами. Класс BackgroundWorker делает то же самое для задач, которые взаимодействуют с пользовательским интерфейсом. Класс Timer выполняет фоновые задачи через определенные интервалы времени.
Кроме того, существует ряд классов, которые синхронизируют действия потоков, включая классы Semaphore и EventWaitHandle, представленные в .NET Framework версии 2.0. Функциональные возможности этих классов сравниваются в разделе Обзор примитивов синхронизации.
В этом подразделе
Пул управляемых потоков
Описание класса ThreadPool , позволяющего выполнить задачу без вмешательства пользователя.Таймеры
Описание способов применения объекта Timer для указания времени вызова делегата.Мониторы
Описание способов применения класса Monitor для синхронизации доступа к элементу и способов создания собственных типов управления потоками.Дескрипторы ожидания
Описание класса WaitHandle — абстрактного базового класса для дескрипторов ожидания события, мьютексов и семафоров, который включает ожидание для нескольких событий синхронизации.EventWaitHandle, AutoResetEvent и ManualResetEvent
Описание управляемых дескрипторов ожидания событий, которые используются для синхронизации действий потоков путем отправки и получения сигналов.Объекты Mutex
Описание способа применения объекта Mutex для синхронизации доступа к объекту, а также способов построения собственных механизмов синхронизации.Блокируемые операции
Описание способов применения класса Interlocked для увеличения или уменьшения значения и его сохранения в одной атомарной операции.Блокировки чтения и записи
Определение блокировки, реализующей семантики одного средства записи и нескольких средств чтения.Семафоры
Описание объектов Semaphore и объяснение способа использования этих объектов для управления доступом ограниченных ресурсов.Обзор примитивов синхронизации
Сравнение функциональных возможностей классов .NET Framework, предоставляемых для блокировки и синхронизации управляемых потоков.
Ссылка
Thread
Справочная документация по классу Thread, который представляет управляемый поток, созданный неуправляемым кодом или в управляемом приложении.BackgroundWorker
Включение фоновых задач, взаимодействующих с пользовательским интерфейсом, работая с событиями, которые были созданы в потоке пользовательского интерфейса.
Связанные подразделы
- Асинхронный файловый ввод-вывод
Описание использования группы потоков портами асинхронного завершения операций ввода-вывода для задания обработки только после завершения этих операций.