在任务并行库或.NET中的TPL中,当使用异步操作时,似乎有两种方法可以等待任务的完成:
如果你有这个......
Task<int> intReturningTask = Task.Factory.StartNew(() => IntReturningFunc() );
你可以用它来等待......
int x = await intReturningTask;
但我相信你也可以这样等待......
int y = intReturningTask.Result;
我的问题是这两者有区别吗?我的猜测是“不”,并且await
存在于非通用版本的Task中,但没有结果,但这只是推测。