差異處

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

連向這個比對檢視

Both sides previous revision 前次修改
java:effective_java:lambdas_and_streams:use_caution_when_making_streams_parallel [2019/08/11 18:29]
tony [Note]
java:effective_java:lambdas_and_streams:use_caution_when_making_streams_parallel [2019/08/11 18:29] (目前版本)
tony [Note]
行 32: 行 32:
 ===== Note ===== ===== Note =====
   - Effective Java第三版Item 48。   - Effective Java第三版Item 48。
-  - 有一種用來簡單判斷是否要用parallel stream的NQ Model,可參考[[http://​gee.cs.oswego.edu/​dl/​html/​StreamParallelGuidance.html|link]]。N為item數量,Q為function的工作量(也可用幾行程式碼來替代),N*Q至少要>​=10000時,parallel才有可能會優於sequential;但根據這個[[https://​www.youtube.com/​watch?​v=x5akmCWgGY0|演講]]內容提到,如果Q是i+=1這種操作,會因為CPU處理速度已太快的原因,N即使一百萬也不見得比較好。+  - 有一種用來簡單判斷是否要用parallel stream的NQ Model,可參考[[http://​gee.cs.oswego.edu/​dl/​html/​StreamParallelGuidance.html|link]]。N為item數量,Q為function的工作量(也可用幾行程式碼來替代),N*Q至少要>​=10000時,parallel才有可能會優於sequential;但根據這個[[https://​www.youtube.com/​watch?​v=x5akmCWgGY0|演講]]內容提到,如果Q是i+=1這種操作,會由於CPU處理速度已太快的原因,即使N的數量有一百萬也不見得比較好。
 ===== Reference ===== ===== Reference =====
   * Effective Java, 3/e   * Effective Java, 3/e