NET高级多线程面试题(含详细实战答案).docx

NET高级多线程面试题(含详细实战答案).docx

.NET高级多线程面试题(含详细实战答案)

一、基础原理核心题(高级必问)

1.请详细说说Thread、Task、ThreadPool的区别,以及项目中如何选型?

参考答案:

三者核心差异在于资源开销、生命周期、可控性、适用场景,项目中严格按场景区分,不会混用:

1)Thread(原生线程)

是操作系统级别的线程,由CLR直接创建,开销最大、完全自主可控。需要手动管理启动、休眠、终止,无线程复用。

缺点:创建销毁成本高、无法取消、无返回值、异常难以统一捕获,滥用会导致线程暴涨、内存溢出。

适用场景:极少量的长时间运行的后台常驻任务(如日志监听、硬件轮询),新项目基本不用。

2)Thre

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档