在这种情况下,由于某些条件,我的任务可以立即返回:
public async Task Test(List<int> TestList)
{
if (TestList.Count() == 0)
return;
// Do something
await UploadListAsync(TestList);
}
Run Code Online (Sandbox Code Playgroud)
它是正确的return;,我应该使用Task.FromResult(false);,还是有更正确的方法?
Dav*_*vid 11
当你使用a时async,你不能Task明确地返回一个(参见编辑) - 返回值已被编译器装箱,作为返回值Task.因此,您的async方法应该像其他方法一样,return如果他们需要尽早摆脱逻辑.
编辑:
在一个时间,你可以返回Task过程中async是如果返回类型Task<Task...,但是这仍然会返回内心Task,而不是外表,因为编译器已经做了同样的包装.这也应该是一个相当罕见的用例,而不是await一连串的Tasks
| 归档时间: |
|
| 查看次数: |
122 次 |
| 最近记录: |