C#中的信号量超时机制

时间:2009-09-16 06:48:36

标签: c# timeout semaphore

有人知道.NET如何处理对Semaphore.WaitOne(timeout)的调用的超时?

我希望有一个TimeoutException,但是MSDN文档没有在预期的例外列表中列出这个,我似乎无法在任何地方找到它。

提前致谢!

1 个答案:

答案 0 :(得分:7)

如果超时,该方法将返回false,如果返回信号,则返回true

if (mySemaphore.WaitOne(1000))
{
    // signal received
}
else
{
    // wait timed out
}