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

События ManualResetEventSlim в C#

Класс ManualResetEventSlim сообщает ожидающим потокам, что можно продолжать. Метод Wait блокирует, пока другой поток не вызовет Set. После Set флаг остаётся поднятым, пока его явно не опустят.

Событие держит старт потока. Метка печатается после Set, поэтому поток не зависает на ожидании. Флаг после сигнала остаётся открытым:

using ManualResetEventSlim evt = new(false); Thread w = new(() => { evt.Wait(); Console.WriteLine("ok"); // выведет ok }); w.Start(); evt.Set(); w.Join();

Запустите поток, который ждёт сигнал и затем выводит в консоль строку "ready". В главном потоке подайте сигнал и дождитесь завершения потока.

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