大家好,我是锋哥。今天分享关于 【Java 线程数过多会造成什么异常?】面试题,希望对大家有帮助;
Java 线程数过多会造成什么异常?
1、线程的生命周期开销非常高
1000道 互联网大厂Java工程师 精选面试题-Java资源分享网
2、消耗过多的 CPU 资源
如果可运行的线程数量多于可用处理器的数量,那么有线程将会被闲置。大量空 闲的线程会占用许多内存,给垃圾回收器带来压力,而且大量的线程在竞争 CPU 资源时还将产生其他性能的开销。
3、降低稳定性
JVM 在可创建线程的数量上存在一个限制,这个限制值将随着平台的不同而不同, 并且承受着多个因素制约,包括 JVM 的启动参数、Thread 构造函数中请求栈的 大小,以及底层操作系统对线程的限制等。如果破坏了这些限制,那么可能抛出 OutOfMemoryError 异常。