重置有线程等待的信号量的最佳方法是什么。现在我能想到的只是做一个 while 循环并释放信号量,直到发生信号量完全异常。我不确定什么是最佳实践。
semaphore.Close();
semaphore = new Semaphore(0,1);
或者
while(true)
{
try
{
semaphore.Release();
}
catch
{
break;
}
}
semaphore = new Semaphore(0,1);
最佳答案
如果您想这样做,您确定要从 Semaphore
开始吗?也许 ManualResetEvent
会更合适?
关于c# - 重置信号量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3989571/