差異處

這裏顯示兩個版本的差異處。

連向這個比對檢視

java:effective_java:concurrency:prefer_executors_tasks_and_streams_to_threads [2023/06/25 09:48] (目前版本)
行 1: 行 1:
 +{{tag>​java effective_java java_concurrency}} 
 +====== Effective Java - Prefer executors, tasks, and streams to threads ====== 
 +===== Introduction ===== 
 +這個Item的重點就是要你善用JDK內建的concurrency物件,而不要自己產生與控制thread。書中以JDK內建的Thread Pool ExecutorService來做說明, 
 +  - ExecutorService支援pool size的控制、工作生命週期的控制、pool的銷毀。 
 +  - Executors提供不同類型的thread pool,單一thread的newSingleThreadExecutor、無大小限制但可能會讓你server爆掉的newCachedThreadPool、有大小限制的newFixedThreadPool、簡單排程的ScheduledThreadPoolExecutor等。 
 +  - JDK將怎麼執行這件事情model為Runnable與Callable;Runnable屬於無回傳值的執行方法,Callable屬於有回傳值的執行方法。 
 +  - JDK7以後支援Jorkjoin pool,詳情參考[[java:​effective_java:​lambdas_and_streams:​use_caution_when_making_streams_parallel|link]]。 
 +===== Note ===== 
 +Effective Java第三版Item 80。 
 +===== Reference ===== 
 +  * Effective Java, 3/e 
 +=====    ===== 
 +---- 
 +\\ 
 +~~DISQUS~~