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

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

提前致谢!

有帮助吗?

解决方案

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

if (mySemaphore.WaitOne(1000))
{
    // signal received
}
else
{
    // wait timed out
}
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top