c# – 始终在ASP.NET MVC控制器中使用Async
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了c# – 始终在ASP.NET MVC控制器中使用Async,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含927字,纯文字阅读大概需要2分钟。
内容图文
我最近继承了一个ASP.NET MVC项目.在该项目中,开发人员在各处使用异步.我正在试图评估它是否是一个好主意.具体来说,我正在审查控制器代码.
在控制器中,开发人员编写了如下内容:
public async Task<ActionResult> Index()
{
return View();
}
这有什么优势而不是传统版本:
public ActionResult Index()
{
return View();
}
如果在控制器代码中使用了await,我可以理解使用async.很多时候,它没有被使用.这种方法有任何理由吗?
解决方法:
不.在任何地方使用Async都不是一个好主意.
关于缺失await,当Async方法不包含Await运算符时,编译器会发出警告.没有await的Async方法将同步运行,这使得语义不正确.
对于您的具体示例,操作简单且运行时间短,这就是为什么使用Async / Await不会带来任何好处,并且不应该使用它,因此您完全可以使用:
public ActionResult Index()
{
return View();
}
Async / Await应该用于执行某种IO的控制器方法(例如,网络请求,数据库访问等).如果控制器方法正在进行CPU绑定工作(例如数学计算),那么使用Async / Await实际上会使性能变差,除非您的测量证明我错了.
旧规则适用:测量两次,切一次.
内容总结
以上是互联网集市为您收集整理的c# – 始终在ASP.NET MVC控制器中使用Async全部内容,希望文章能够帮你解决c# – 始终在ASP.NET MVC控制器中使用Async所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。