我想创建一些以通用方式使用的方法,它会阻塞(除非某个超时到期),直到满足给定条件。
代码中的用法类似于:
WaitUntil( condition );
我尝试使用 While (..) 循环来实现它,但这似乎是一种浪费。
在当前的实现中,我正在初始化一个“一次性”计时器,该计时器在超时时到期。我正在运行一个 while 循环,并检查计时器是否超时,如果超时则抛出异常。
是否有任何简单而有效的技术来实现这种方法?
看一下Albahari 的线程文章 http://www.albahari.com/threading/,尤其是basic synchronization
部分和手动重置事件 http://msdn.microsoft.com/en-us/library/system.threading.manualresetevent.aspx and 自动重置事件 http://msdn.microsoft.com/en-us/library/system.threading.autoresetevent.aspx。这将使您对 .NET 中的信号构造有一个很好的了解。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)