日期:2014-05-18  浏览次数:20765 次

C# 线程同步 请教
在C#中,无论是manualresetevent还是autoresetevent   ,waitone和set都是成对出现的,也就是说,当调用set时,如果没有线程因调用waitone而阻塞,那么再有调用waitone的进程时,就会顺利的执行下去。
我想问的是有没有一种同步机制,可以让类似于set的信号可以即时消失,当调用set时,如果没有进程等待,就相当于没有调用,这样,每一次调用waitone时,都得等在这之后有set调用才可以继续执行


------解决方案--------------------
热切关注中.....支持!
------解决方案--------------------
是我 理解错了吧?我怎么觉得你说反了。
我怎么觉得是
private static AutoResetEvent myResetEvent = new AutoResetEvent(false);

一个线程调用 myResetEvent.waitone() 线程等待
如果有 线程调用 myResetEvent.set() 状态修改为true ,等待的线程会继续走下去 又将myResetEvent 状态修改成true
如果是ManualResetEvent 需要手工置为false
------解决方案--------------------
哦?是吗,好像