执行策略,我看到有人这样调用 ExecuteAsync:
...
.ExecuteAsync(async (ct) => await GetEmployeeAsync(employeeId, ct), cancellationToken);
像这样:
...
.ExecuteAsync(ct => GetEmployeeAsync(employeeId, ct), cancellationToken);
有什么区别,应该使用哪一个?
在这个简单的例子中,没有语义差异。省略
async
和await
的版本具有几乎无法估量的性能优势。
在一般情况下,省略或遗漏async
和
await
时会有一些陷阱。作为一般规则,如果代码做了任何重要的事情,那么你应该保留 async
和 await
.
如果代码真的很简单,则只省略(省略)
async
/await
- 就像在这种情况下,当代表只是将 employeeId
绑定到 GetEmployeeAsync
.