何时使用PageAsyncTask(异步asp.net页面)的示例
发布时间:2020-12-16 09:31:41 所属栏目:asp.Net 来源:网络整理
导读:根据我对阅读有关ASP.NET异步页面的理解,该异步任务开始时执行的方法始终在预渲染和预渲染完成事件之间执行.因为页面的控件’事件在页面的加载和预渲染事件之间运行,所以无论开始任务处理程序(下面的BeginAsync处理程序)产生什么,它都不能用在控件的事件中?
根据我对阅读有关ASP.NET异步页面的理解,该异步任务开始时执行的方法始终在预渲染和预渲染完成事件之间执行.因为页面的控件’事件在页面的加载和预渲染事件之间运行,所以无论开始任务处理程序(下面的BeginAsync处理程序)产生什么,它都不能用在控件的事件中?例如,如果处理程序从数据库获取数据,则数据不能用于任何控件的回发事件?在预渲染后你会将数据绑定到数据控件吗?
PageAsyncTask pat = new PageAsyncTask(BeginAsync,EndAsync,null,true); this.RegisterAsyncTask(pat); 解决方法
完全无视Guffa的回答,还没有足够的声誉来投票给他,但这完全是误导和可怕的错误. Tony_Henrich的链接非常好,这是另一个同样有用的东西:
http://msdn.microsoft.com/en-us/magazine/cc163725.aspx
所有DataSource控件都在Page_PreRender之后自动数据绑定(如果之前还没有手动) – 所以是的,您可以绑定所有PageAsyncTask事件处理程序中的数据,甚至是Page_PreRenderComplete(仅在每个PageAsyncTask完成或超时后启动). PageAsyncTask最适合在处理数据库,Web服务,文件I / O以及CPU等待数据处理的所有其他操作时使用 – 但不适用于CPU密集型或长时间运行的计算(CPU忙时). 说了这么多,只有当两个或多个PageAsyncTask并行运行时,页面才会处理得更快 – 但是,即使只有一个PageAsyncTask,请求线程也会被发送回池(有限供应),而I / O线程会处理操作,从而释放IIS以接收更多传入请求,直到任务完成(然后它从池中获取请求线程,不一定是同一个,并继续页面处理). (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – 将会话永久保持为stackoverflow
- asp.net – 为什么我不能从Visual Studio 2005安装IE8后调试
- 使用经典ASP上传图像
- 将配置文件appsetting中的值转换为动态对象调用
- ASP.NET Update Panel阻止jquery工作
- asp.net-mvc-5 – 如何配置Users上下文/表?
- ASP.NET Ajax客户端框架无法加载.将ScriptManager放在空白页
- IIS 8发布ASP.NET核心应用程序 – 正在使用的文件
- ASP.NET MVC 1是否与ASP.NET MVC 2兼容?
- ASP.NET – AJAX / JQUERY的重连接问题
推荐文章
站长推荐
热点阅读