如何进行Task.CompletedTask和Task.Result分析
发表于:2025-01-24 作者:千家信息网编辑
千家信息网最后更新 2025年01月24日,如何进行Task.CompletedTask和Task.Result分析,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。在任何返回Task
千家信息网最后更新 2025年01月24日如何进行Task.CompletedTask和Task.Result分析在任何返回Task的方法中,如果可以在不进行异步的情况下计算结果,则最好避免使用Task.Run。例如,一个简短的计算函数,或者测试中返回了一个预先计算过的结果,则无需使用Task.Run。
如何进行Task.CompletedTask和Task.Result分析,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
例如,定义了一个返回Task的接口方法,但是在实现中,并没有特别耗时的代码。
public interface IComputer { Task Do(); TaskDoString();}
一般我们会这样实现。即使实现中代码很简短。
public class Computer : IComputer { public Task Do() { return Task.Run(() => { //逻辑代码 }); } public TaskDoString() { return Task.Run( () => { //逻辑代码 return "aaa"; }); }}
实际上,Task类上面有两个帮助程序,,这些帮助程序让代码更具可读性,并且所需的运行时开销更少。
对于上述接口实现中的 Do方法,我更愿意使用Task.CompletedTask。
public Task Do() { //逻辑代码 return Task.CompletedTask; }
我们看一下CompletedTask的定义
///Gets a task that has already completed successfully. ///The successfully completed task. public static Task CompletedTask { get; }
如果返回Task
public TaskDoString() { //逻辑代码 return Task.FromResult("aaa");}
看一下FromResult的定义
///Creates a /// The result to store into the completed task.///that's completed successfully with the specified result. The type of the result returned by the task. ///The successfully completed task. public static TaskFromResult<[Nullable(2)] TResult>(TResult result);
通过上述的改变,即实现了接口的实现,也减少了Task.Run调用的系统开销。
看完上述内容,你们掌握如何进行Task.CompletedTask和Task.Result分析的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!
代码
方法
逻辑
接口
分析
简短
内容
开销
情况
更多
程序
答案
结果
问题
帮助
束手无策
为此
两个
函数
原因
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
jdbc连接数据库笔试题及答案
软件开发技术人员考评方案
广联先锋网络技术 济南
2021太原网络安全高峰
前置服务器
江苏智柏网络技术有限公司
行业志专辑数据库产品不支持
网站服务器端口号怎么看url
数据库课程表图片
web服务器的全称叫啥
邢台android软件开发
买服务器搭建vpn
静安区品牌软件开发常见问题
水利部网络安全平台
刀片式服务器机箱
软件开发的简历经验
web业务安全托管服务器
市网络安全周通知
网络安全的文
浙江智能刀片服务器价格
闵行区即时网络技术产品
搭建天翼云游戏代理服务器
微程互联网科技
win服务器文件夹权限
南宁互动安全教育展馆软件开发
适合需求模糊的软件开发模型
医疗行业网络安全占比
违反网络安全管理
滴滴出行董事长软件开发人
规定国家推进网络安全社会