Azo*_*ous 2 c# multithreading semaphore
有没有办法找到它
谢谢.
这是线程同步中的禁止知识.因为完全不可能做到这一点.它代表了无法解决的竞争条件.当你使用Habjan的方法时,你会得出结论,有两个线程在等待.一微秒后,另一个线程调用WaitOne(),有三个.但是你会根据陈旧的价值做出决定.
竞争条件没什么好处的,它们难以调试.他们习惯于每周只让你的代码失败一次.只要添加仪器代码以尝试诊断代码失败的原因,它们就会停止发生,因为添加的代码会改变时间.
永远不要这样做.