如果任务完成,任务<t> .Result会阻塞吗?</t>

时间:2014-11-13 08:36:40

标签: c# task blocking

在任务完成之前,访问任务的Result属性可能会阻塞,如Stephen Cleary's article on the subject所示。

我想在已经完成的任务上访问Result将永远不会阻止,但我找不到任何确认这一点的来源。是这样吗?

1 个答案:

答案 0 :(得分:5)

来自Task.Result Property文档:

  

此属性的get访问器确保在返回之前完成异步操作。一旦计算结果可用,它就会被存储,并在以后调用Result时立即返回。