所以我在小應用程序中使用了多線程。在這裏創建一個新線程,在那裏創建一個新線程。新的多線程 - 多線程最具成本效益的方式?
我目前正在研究監視IRC聊天的程序。對於每個有效的命令,它創建一個線程,做一些工作,並將結果輸出到聊天。有時,應用程序將在短時間內獲得10個或更多有效命令,並創建10個或更多線程。應用程序開始真的放慢速度。我讀過創建和關閉線程是非常低效的資源,所以我想改變我的方法。
我有一個想法是創建一些線程(5左右?),總是運行一個方法,我將命令傳遞給隊列在FIFO的基礎上。在我實施這個之前,我想看看是否有更好的東西我應該使用。當然,我不想逃跑並重新發明輪子。
考慮[java線程池](http://docs.oracle.com/javase/6/docs/api/java/util/concurrent/ThreadPoolExecutor.html) –
'ExecutorService executor = Executors.newFixedThreadPool(5); ' – assylias