<分区>
我看到一些同事代码,他选择不等待数据库调用而只返回任务。例如
public Task<UpdateResult> AddActivityAsync(ClaimsPrincipal principal, Activity activity)
{
return _userManager.SaveToDatabaseAsync(principal, activity);
}
因为 _userManager.SaveToDatabaseAsync
是异步的,我会用这种方式实现
public async Task<UpdateResult> AddActivityAsync(ClaimsPrincipal principal,
Activity activity)
{
return await _userManager.SaveToDatabaseAsync(principal, activity);
}
这个方法的调用方法总是等待它:
await _profile.AddActivityAsync(..., ...)
不使内部方法异步并只返回任务,让调用者等待它有什么好处吗?我以为我们必须一直写 Async ...