c# - 如果方法是同步的,则保留 Task 和 Task.FromResult 或完全删除 Task-stuff?
问题描述
我有一个 Web API 控制器(ASP.NET Core 5)。我的一些 API 是异步的,而其中一些不是。我的问题是下一个:public **Task<T>** WebApiMethod + Task.FromResult()
如果我的方法是同步的,那么在 Web API 控制器中使用有什么好处吗?
例如:
public Task<string> GetSomeData()
{
// some synchronous processing...
return Task.FromResult(result);
}
我应该把上面的示例代码变成这样吗?
public string GetSomeData()
{
// some synchronous processing...
return result;
}
解决方案
如果 api 正在做同步工作,它应该有一个同步签名。它将使其他开发人员对该功能的可读性和理解更加清晰,并防止将来再次阅读此功能时产生误解。
将来,如果需要修改方法以执行异步任务,您可以将签名更改为具有异步签名。
推荐阅读
- python - 为什么python必须生成完整范围来测试是否在范围内浮动?
- hive - Wince:重新启动后重置配置单元的值?
- scala - Scala:在每行的末尾添加值,文件中的最后一行除外
- react-native - 反应式编程与本机反应有关吗?
- ios - 在swift 4.0中将值附加到数组后如何重新加载tableView
- ios - 如何快速观察firebase数据库中子子节点的值变化?
- ios - 没有 gamescene.sks 文件的 SpriteKit
- ios - Swift4 将特定字符串转换为特定 Int
- php - 将 MySQL 查询更改为 Oracle
- openebs - 为什么应用程序在 Centos 和 OpenEBS 上使用 rancher/rke 处于容器创建状态?