簡體   English   中英

Java多線程控制

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM