线程池高频面试题及详细答案(实战无套话版).docx

线程池高频面试题及详细答案(实战无套话版).docx

线程池高频面试题及详细答案(实战无套话版)

1.为什么要用线程池?手动newThread有什么问题?

参考答案:

手动创建线程主要有三个致命问题:

第一,频繁创建和销毁线程开销很大。线程是操作系统资源,创建需要分配栈内存、注册系统资源,销毁也要回收资源,高并发下会浪费大量CPU和时间。

第二,无法控制并发数量。如果无限new线程,并发量上来后会导致系统线程过多,CPU频繁上下文切换,吞吐量反而暴跌,严重时直接OOM宕机。

第三,线程缺乏统一管理。没有队列、拒绝策略、超时机制,任务堆积、线程卡死都无法处理,线上问题完全不可控。

而线程池可以复用线程、控制并发数、统一调度任务、

文档评论(0)

1亿VIP精品文档

相关文档