在Java中創建FixedThreadPool Executor對象時,您需要傳遞一個參數,描述Executor可以同時執行的線程數。我正在建立一個服務類,負責處理大量的電話號碼。對於每個需要執行Web服務的電話號碼(這是我的瓶頸),然後將響應保存在散列表中。運行Web服務請求的線程池的合理線程數
爲了使這個瓶頸對我的服務的性能不那麼有害,我決定創建Worker類來獲取未處理的元素並對它們進行處理。 Worker類實現Runnable接口,並使用Executor運行Workers。
可以在同一時間運行的工人數取決於Executor FixedThreadPool的大小。什麼是ThreadPool的安全大小?當我用一些大數字作爲參數創建FixedTheradPool時會發生什麼?
你好邁克爾,一些要點: 你認爲「一大堆電話號碼」? 您的應用會遇到哪些系統規格? 當使用特定批處理線程時,可以使用內存量。堆和處理器速度也考慮到了計算。 此致敬禮, 錦。 – 2009-06-22 18:28:08
除此之外,請閱讀此處的類比:http://java.sun.com/docs/books/tutorial/essential/concurrency/pools.html以查看您的應用程序是否適合FixedThread池的漏洞。 – 2009-06-22 18:30:04