Как проверить, был ли Уэтандль установлен?
-
27-09-2020 - |
Вопрос
У меня есть waithandle и я хотел быЧтобы узнать, как проверить, установлен ли WATHANDLE или нет.
Спасибо за помощью!
Решение
попробуйте waithandle.waitone (0)
Если millisecondstimeout равно нулю, метод не блокирует.Он проверяет состояние списки ожидания и немедленно возвращается.
Другие советы
const int DoNotWait = 0;
ManualResetEvent waitHandle = new ManualResetEvent(false);
Console.WriteLine("Is set:{0}", waitHandle.WaitOne(DoNotWait));
waitHandle.Set();
Console.WriteLine("Is set:{0}", waitHandle.WaitOne(DoNotWait));
.
Выход:
устанавливается: false
устанавливается: true
Используйте один из методов Wait...
на WaitHandle
Значение времени ожидания, например, как WaitOne
и пройти время ожидания 0.
Вы можете использовать quitone (int millisecondstimeout, bool exitcontext) Способ и пройти в 0 для TimeSpan.Это вернется сразу.
bool isSet = yourWaitHandle.WaitOne(0, true);
.