Task.Wait()和((IAsyncResult)Task).AsyncWaitHandle.WaitOne()

时间:2019-01-18 15:47:31

标签: c# .net multithreading asynchronous task

几天前,我正在ReferenceSource上探索一段代码,其中使用((IAsyncResult)Task).AsyncWaitHandle.WaitOne()而不是Task.Wait()完成了正在执行线程上的任务等待。评论该代码的原因是,与WaitOne()相比,Task.Wait()与减少死锁的可能性有关。不幸的是,我不记得他们在注释或我正在探索的代码段中使用的精确表达。现在,我想了解我偏爱其中任何一个所带来的好处。

0 个答案:

没有答案