Java线程池中keepAliveTime的值具体代表多长时间内线程可以保持活跃而不被回收?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1697个文字,预计阅读时间需要7分钟。
在线程池中,属性keepAliveTime表示的是线程存活时间。这个值较为模糊,意味着线程在核心线程数以下时,如果线程在这段时间内没有执行任务,就会被回收。以下是keepAliveTime在JDK中的解释:当线程数量大于核心线程数时,此值为终止多余的空闲线程的时间。
之前对线程池中属性:keepAliveTime比较模糊,而且看过之后过一段时间就会忘掉,于是就在此记录一下。
keepAliveTime的jdk中的解释为:
当线程数大于核心时,此为终止前多余的空闲线程等待新任务的最长时间。
说的让人感觉比较模糊,总结一下大概意思为:比如说线程池中最大的线程数为50,而其中只有40个线程任务在跑,相当于有10个空闲线程,这10个空闲线程不能让他一直在开着,因为线程的存在也会特别好资源的,所有就需要设置一个这个空闲线程的存活时间,这么解释应该就很清楚了。
这样以后忘记了就过来看看就OK了。
本文共计1697个文字,预计阅读时间需要7分钟。
在线程池中,属性keepAliveTime表示的是线程存活时间。这个值较为模糊,意味着线程在核心线程数以下时,如果线程在这段时间内没有执行任务,就会被回收。以下是keepAliveTime在JDK中的解释:当线程数量大于核心线程数时,此值为终止多余的空闲线程的时间。
之前对线程池中属性:keepAliveTime比较模糊,而且看过之后过一段时间就会忘掉,于是就在此记录一下。
keepAliveTime的jdk中的解释为:
当线程数大于核心时,此为终止前多余的空闲线程等待新任务的最长时间。
说的让人感觉比较模糊,总结一下大概意思为:比如说线程池中最大的线程数为50,而其中只有40个线程任务在跑,相当于有10个空闲线程,这10个空闲线程不能让他一直在开着,因为线程的存在也会特别好资源的,所有就需要设置一个这个空闲线程的存活时间,这么解释应该就很清楚了。
这样以后忘记了就过来看看就OK了。

