c# - 返回 await Task.FromResult 还是禁止警告?
问题描述
我们有一个返回类型为async Task<>
. 它当前的实现需要查询数据库,因此需要异步操作。但是我们将其更改为仅使用内存中的对象,因此基本上我们不再需要在实现中进行异步操作,但我不想更改方法的签名以不破坏该方法的任何调用者。
现在,我应该将实现包装在一个中await Task.FromResult
还是应该不使用任何await
并且只是抑制警告?
解决方案
普遍接受的方式以及在 Microsoft 文档中主要使用的方式是删除async
关键字 and return Task.FromResult
。Task.CompletedTask
如果方法不需要返回类型(显然除了 Task),则使用该方法。
推荐阅读
- python - Python:在函数中存储变量并根据条件重新启动时间
- javascript - 将JSON数组传递给云函数节点js
- reactjs - React Route - 点击时检查用户是否登录,如果没有,让他登录然后返回页面
- python - ULMFiT 如何进行初始词嵌入?
- amazon-web-services - 无法写入 AWS Timestream 表 ResourceNotFound 异常
- reactjs - React:useState 挂钩仅更新来自同一功能组件的多个实例的最后一个实例
- python - 来自 QFormLayout 的输入打印为空
- travis-ci - Travis CI 与 Heroku 集成,将密钥设置为 env
- julia - 为什么在 Julia 中有许多不同的方法来调度抽象类型?它们之间有什么区别?
- scheme - 没有直接映射的方案组合?