我主要是在線程池上運行的CPU密集型操作。 然而,有一定數量的等待敵人的外部事件並非一致發生。 由於在Java中,據我所知,沒有一個線程池實現可以根據觀察到的任務吞吐量自動調整線程數量(如Microsoft的CLR 4),是否至少有一種方法可以手動告訴線程池在阻塞操作開始時增加其大小,在結束時減小大小?Java線程池超額認購
例如,對於8個內核,池大小爲8. 如果操作是CPU佔用率爲100%,則使用此固定池。 如果有一些阻塞操作,應該能夠做到這一點:
pool.increase();
waitForSpecialKeyPress();
pool.decrease();
這裏它是如何在微軟的C++異步庫正在做的是:Use Oversubscription to Offset Latency