[英]Java Multi Threading Control
我正在使用此代碼來創建線程。
while ((strLine = br.readLine()) != null) {
r = new runnable(strLine);
new Thread(r).start();
x++;
Thread.sleep(100);
}
如何控制在任何時間點運行的最大線程數? 此代碼存在使用內存不斷上升(內存泄漏)的問題有更好的方法嗎? 我嘗試使用調度程序,但沒有幫助。
您可以使用ExecutorService
創建受約束的線程池。
ExecutorService executor = Executors.newFixedThreadPool(10);
將創建一個包含10個可用線程的池。 然后你可以打電話
executor.submit(new Runnable() { ... })
對於每個工作單元。
編輯 :我應該注意,此工具僅適用於Java 1.5及更高版本。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.