我正在寻找一种设计模式,以从使用 ManualResetEvent 切换到使用 Thread.Join 等线程方法。现在我正在进行异步调用,然后使用 ManualResetEvent 等待异步调用完成,然后再继续进行调用的线程。
我很高兴能够产生更稳定和易读的代码的任何实现。有兴趣查看使用 C# yield 关键字和 F# Async(如果有)的实现。
谢谢。
我正在寻找一种设计模式,以从使用 ManualResetEvent 切换到使用 Thread.Join 等线程方法。现在我正在进行异步调用,然后使用 ManualResetEvent 等待异步调用完成,然后再继续进行调用的线程。
我很高兴能够产生更稳定和易读的代码的任何实现。有兴趣查看使用 C# yield 关键字和 F# Async(如果有)的实现。
谢谢。
看看这里提供的 Jeff Richter PowerThreading 库。这个库有 AsyncEnumerator 类,它利用 'yield' 关键字以同步方式执行异步操作。
有一个关于这个类的截屏视频,可以在这里找到:
http://channel9.msdn.com/posts/Charles/Jeffrey-Richter-and-his-AsyncEnumerator/
希望这可以帮助。
阀门。