lui*_*uis 32 c# asynchronous task async-await amazon-dynamodb
执行以下操作之间有什么区别:
async Task<T> method(){
var r = await dynamodb.GetItemAsync(...)
return r.Item;
}
Run Code Online (Sandbox Code Playgroud)
VS
async Task<T> method(){
var task = dynamodb.GetItemAsync(...)
return task.Result.Item;
}
Run Code Online (Sandbox Code Playgroud)
在我的情况下,由于某种原因,只有第二个工作.第一个似乎永远不会结束.
Fra*_*rdo 44
await 异步展开任务的结果,而只是使用Result会阻塞,直到任务完成.
NAS*_*SER 12
task.Result访问属性的get访问器阻塞调用线程,直到异步操作完成; 它等同于调用Wait方法.一旦操作的结果可用,它就会被存储并在后续调用Result属性时立即返回.请注意,如果在任务操作期间发生异常,或者任务已被取消,则Result属性不会返回值.相反,尝试访问属性值会引发AggregateException异常.唯一的区别是await不会阻止.相反,它将异步等待任务完成然后恢复
| 归档时间: |
|
| 查看次数: |
62033 次 |
| 最近记录: |