0
我创建了一个值为5的线程池。将任务分配给5个线程之后,工作者应该等待创建线程,直到线程在线程池中获得空闲为止。那么,如何找到线程池中的任何线程都是免费的?如何检测ThreadPool中是否有空闲线程?
在此先感谢....
我创建了一个值为5的线程池。将任务分配给5个线程之后,工作者应该等待创建线程,直到线程在线程池中获得空闲为止。那么,如何找到线程池中的任何线程都是免费的?如何检测ThreadPool中是否有空闲线程?
在此先感谢....
if (thread instanceof ThreadPoolExecutor) {
System.out.println(
"Pool size is now " +
((ThreadPoolExecutor) pool).getActiveCount()
);
}
考虑到该ExecutorService的名称是线程,这为您提供的活动线程,现在你可以得到免费的线程。
[Javadocs页面]上有很多信息(https://docs.oracle.com/javase/7/docs/api/java/util/concurrent/ThreadPoolExecutor.html) – tar
非常感谢,tar 。我已经看过它。但在看到Rahul Singh的回答和您的评论后,我了解了Javadocs页面。 –