我在页面上有多个多选DropDown控件(用户控件)。尽管在DropDown中加载数千个项目并不是一个好习惯,但我无法改变现有的项目要求。
两个DropDown控件填充了列表中的大约一千个项目。由于我在页面加载上填充了所有DropDown控件,因此加载页面需要花费大量时间。
我想使用不同的线程来填充这两个控件。是否可以在同一页面上使用不同的线程进行控制?
答案 0 :(得分:1)
在ASP.NET中,多线程实际上没有任何意义
在ASP.NET中,即使您使用线程,在完成所有这些线程之后,您的响应将作为一个大块发送。所以创建一个新的线程只会减慢你已经很慢的应用程序(所有线程管理都在头上)
而你需要的是Parallel,AJAX和Caching
平行编程:此剂量将使用您的服务中的所有核心,并将很快填满这些物品。
AJAX :您可以做的是加载页面,加载页面后,执行AJAX请求,通过AJAX调用在后台加载项目。
缓存:这样可以缓存部分页面,甚至只能控制用户控件,这样可以节省大量时间