2012-02-06 91 views
1

也許有人可以推薦一些關於線程執行,線程管理的好例子。可能不僅僅是例子,而是文章,教程,如果你會用例子。JAVA通過n執行線程堆棧

通常我有一個問題,我需要從網上下載一堆文件,但連接限於兩個。所以,當我收集所有需要的url文件時,我想下載... 100個文件,但以異步方式下載兩個文件,直到所有線程完成他們的工作。

感謝您的支持。

回答

1

我沒有一篇文章,但我知道一本很好的書,它涵蓋了使用Java的通用多線程編程。它被稱爲Java Concurrency in Practice.它確實涵蓋了一般的使用模式等。

2

ExecutorService應該照顧你的線程管理。

final int POOL_SIZE = 2; 
final ExecutorService pool = Executors.newFixedThreadPool(POOL_SIZE); 

然後你可以調用submit方法執行運行任務

2

我認爲ThreadPoolExecutor應該會幫助你,在java.util.concurrent。*中有許多不同的輪詢實現。