.NET多线程(三)线程池

 我来答
科创17
2022-06-01 · TA获得超过5876个赞
知道小有建树答主
回答量:2846
采纳率:100%
帮助的人:171万
展开全部

线程的创建和销毁是比较昂贵的操作

事先创建好几个对象,需要就从池中分配,用完就返回池中

(1)线程池,只适合短时操作,不要阻塞线程池线程
(2)线程池,线程是后台线程
(3)线程池的线程数量有上限
(4)ASP.NET 使用自己的线程池

(1)工作线程(worker thread)
主要处理占用CPU进行算法计算等

(2)IO线程(I/O thread)
主要处理网络请求,硬盘文件读写等

(1)电脑的内存是有限的,每个线程,都会占用内存,如果并发数量很多,内存会爆掉。
(2)使用线程池,当并发超过一定数量,则会排队,所以,并行的请求处理时间会被延长。

(1)使用 QueueUserWorkItem(worker thread)

(2)委托异步调用使用了线程池(worker thread)

(3)System.Threading.Timer 使用了线程池(worker thread)

(4)System.ComponentModel.BackgroundWorker使用了线程池(worker thread)

使用System.Threading.CancellationTokenSource

以上内容,仅仅代表个人理解,以及参考书资料的观点。
如果有错误,请及时指出,不要让错误的观点误导更多的人,感谢!

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式