2010-04-17 29 views

回答

3

您可以通過一個ThreadFactorynewCachedThreadPool 讓創建一個新的線程時,因爲newCachedThreadPool重用你不必擔心線程結束線程它實現了一些記錄。

OR

演員執行人爲ThreadPoolExecutor,並調用其getPoolSize()方法

+0

緩存的線程池將結束最近未使用的線程。因此,自定義的'ThreadFactory'只能跟蹤創建了多少個線程,而不是有多少個活動。 – 2010-04-17 08:27:53

+1

請注意,在所有Java實現中,由'newCachedThreadPool'返回的'ExectuorService'不保證被'ThreadPoolExecutor'保證。據說,這可能是你願意承擔的風險。 – 2010-04-17 08:45:08

0

我不知道你是否有興趣的存在,或者你是否有興趣在數量線程數量任務有效。如果您對任務感興趣,則可以爲已添加的每項任務存儲Future。當您想知道有多少任務處於活動狀態時,可以簡單計數Future對象的數量,該對象響應falseisDone。那個迴應true的那個顯然可以在那個時候被刪除。

相關問題