有人能介绍一下AutoResetEvent.Reset()方法的用例吗?我想在什么时候和为什么要使用这种方法?我理解WaitOne和Set,但这对我来说并不是很清楚。
发布于 2011-05-03 22:38:23
是的,每当等待事件的线程收到信号时,AutoResetEvent都会自动重置它的状态。然而,有可能给定的事件不再有效,并且自最初设置AutoResetEvent以来没有线程等待它。在这种情况下,Reset方法就变得有用了
发布于 2011-05-03 22:31:54
看起来像是从EventWaitHandle继承过来的。对于同样继承自该类的ManualResetEvent,可能更有用?
发布于 2011-05-03 22:33:14
该方法继承自基类EventWaitHandle,用于(重新)将AutoResetEvent设置为其"blocked“状态。
因为一旦发出信号,AutoResetEvent就会自动进入这种状态,所以您通常不会在代码中看到这种方法,但是对于从EventWaitHandle派生的其他类来说,它会更有用!
https://stackoverflow.com/questions/5871003
复制相似问题