线程池高频面试题及详细答案(实战口语版)
一、基础认知类(初级必问)
1.为什么要用线程池?直接newThread不行吗?
直接手动创建线程问题特别多,生产环境基本禁止手写newThread,核心原因有4点:
第一,资源开销大。线程是操作系统资源,创建、销毁都需要耗费CPU和内存,频繁创建销毁会造成大量资源浪费,导致系统卡顿。
第二,无法控制并发数量。如果大量请求过来,无限创建线程,会导致线程过多、上下文切换频繁,最终CPU打满、系统OOM宕机。
第三,线程复用率低。手动线程执行完就销毁,没法复用,线程池可以缓存空闲线程,重复执行任务。
第四,缺乏统一管理。手动线程没法统一监控、超时控
原创力文档

文档评论(0)