Tag: 协同程序

同步线程协同程序

我试图让线程在之前等待对方,以便保持同步。 在我的实际程序中,我有很多IObjectObserved对象(在他们自己的线程上)发送事件,我想保持所有内容同步,所以IObjectListener (在它自己的线程上)可以监听这些对象之一50次然后订阅另一个及时赶上第51届活动。 我还没有那么远,但我认为同步线程是主要问题。 我设法通过使用AutoResetEvent的双向信令来实现这一点。 有没有更好的方法来做到这一点? class Program { static EventWaitHandle _ready = new AutoResetEvent(true); static EventWaitHandle _go = new AutoResetEvent(false); static EventWaitHandle _ready1 = new AutoResetEvent(true); static EventWaitHandle _go1 = new AutoResetEvent(false); static EventWaitHandle _ready2 = new AutoResetEvent(true); static EventWaitHandle _go2 = new AutoResetEvent(false); static void Main(string[] args) { new Thread(Waiter).Start(); new Thread(Waiter1).Start(); new […]