ManualResetEventSlim
ManualResetEventSlim(false): Wait(0) даёт false. Set оставляет сигнал; Reset гасит его.
Синтаксис
var ev = new ManualResetEventSlim(false);
Пример
Давайте проверим сигнал до и после Set:
using System;
using System.Threading;
class Program
{
static void Main()
{
var ev = new ManualResetEventSlim(false);
Console.WriteLine(ev.Wait(0));
ev.Set();
Console.WriteLine(ev.Wait(0));
Console.WriteLine(ev.Wait(0));
}
}
Результат выполнения кода:
False
True
True
Пример
Давайте погасим сигнал через Reset:
using System;
using System.Threading;
class Program
{
static void Main()
{
var ev = new ManualResetEventSlim(false);
ev.Set();
ev.Reset();
Console.WriteLine(ev.Wait(0));
}
}
Результат выполнения кода:
False
Смотрите также
-
AutoResetEvent,
автосброс -
CountdownEvent,
барьер -
Pulse,
Pulse -
Wait,
Wait