ASP.NET异步方法问题
发布时间:2021-02-20 12:05:26 所属栏目:asp.Net 来源:互联网
导读:我有一个开发人员最近告诉我,你应该总是异步进行数据库调用. (使用ThreadPool.QueueUserWorkItem或IAsyncResult和委托) 他的理由是:IIS只有24个(左右)线程可以用于请求.当用户发出请求时,他们会获得其中一个线程.但是,使用异步方法时,可以访问IIS范围之外的W
我有一个开发人员最近告诉我,你应该总是异步进行数据库调用. (使用ThreadPool.QueueUserWorkItem或IAsyncResult和委托) 他的理由是:IIS只有24个(左右)线程可以用于请求.当用户发出请求时,他们会获得其中一个线程.但是,使用异步方法时,可以访问IIS范围之外的Windows线程.他说,当你以这种方式使用异步方法时,你将初始线程释放给其他用户的请求,并将其转移到Windows线程(用于该线程的生命周期). 你怎么看?所有db调用都应该是异步的吗? 解决方法工作线程数量有限.这些与ASP.NET有关,而不是IIS(IIS7除外,它们是相同的东西).确实,数据库调用或任何其他调用都会占用其中一个线程.对于ADO.NET调用,可以将页面编写为异步页面,在数据库操作正在进行时不使用任何线程.除非你确实遇到问题,否则你不应该为此烦恼. (编辑:4S站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – 模型单元测试能否真正独立,如何[ASP.NET MV
- asp.net – HttpWebRequest正在为404抛出异常
- asp.net-mvc – asp.net mvc – string或int的路由(即/ typ
- asp.net-mvc – 为什么这个路由参数被添加到查询字符串中?
- 如何使用ASP.NET MVC Web API OData链接到Razor中的OData集
- asp.net-mvc-2 – 如何在ASP.NET MVC2中为Html.LabelFor()添
- 在对ASP.NET MVC Action的AJAX请求期间有网络请求超时时会发
- asp.net – 如何正确地大写希腊字在.NET?
- 在asp.net c#应用程序中使用Graphviz Dll
- asp.net(C#)把汉字转化成全拼音函数(全拼)
推荐文章
站长推荐
- asp.net-mvc – 在MVC Controller中访问GET参数
- asp.net – 为什么Global.asax事件在我的ASP.NET
- asp.net-mvc – 值不能为空或为空.参数名称:con
- asp.net-mvc-3 – 局部视图中的RenderSection
- asp.net-mvc – 如何将MVC 5 IdentityModels.cs移
- asp.net – 转发器控件中的单选按钮列表
- 如果我的Asp.Net会话有IsNewSession == true,那我
- ASP.NET MVC与Webforms:替换WebForms控件
- ASP.NET:隐藏gridview中的列
- asp.net-mvc – Visual Studio 2010 Full和ASP.N
热点阅读