C#相当于java的等待和通知?
我知道,你可以locking一个对象在C#中使用锁,但你可以放弃锁,并等待别的东西通知你,它可以改变,你可以在Java中等待和通知?
在我看来,同步和locking在java和c#分别是同步的。
Monitor类中的等效function(包括正常locking)
foo.notify() => Monitor.Pulse(foo) foo.notifyAll() => Monitor.PulseAll(foo) foo.wait() => Monitor.Wait(foo)
C#中的lock
语句相当于使用适当的try / finally块调用Monitor.Enter
和Monitor.Exit
。
有关更多详细信息,请参阅我的线程教程或Joe Albahari的 教程 。
我认为Wait Handles可能适合你。 看看这是否有帮助。