Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
⊗csSpCcTp 360 of 509 menu
◀ ▶

Пул потоков ThreadPool в C#

Статический класс ThreadPool переиспользует готовые потоки для коротких операций и снижает затраты на создание отдельных экземпляров Thread.

Метод QueueUserWorkItem передаёт делегат одному из потоков пула. Длительная блокировка внутри делегата может задержать выполнение остальных операций.

Передадим в пул делегат, который выводит строку. Строка "pool" появляется в консоли из потока пула. Без короткой паузы главный поток мог бы завершить программу раньше делегата:

ThreadPool.QueueUserWorkItem(_ => Console.WriteLine("pool")); // выведет pool Thread.Sleep(50);

Поставьте в пул короткую работу, которая выводит в консоль строку "ready". Не завершайте программу, пока эта строка не появится.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить