Software entities (class, modules, functions, etc.) should be open for extension, but closed for modification.- Bertrand Meyer Junior programmers create simple solutions to simple problems. Senior programmers create complex solutions to complex problems. Great programmers find simple solutions to complex problems.- Charles Connell 註1:本部落格的範例程式碼在 2015 年以前的文章中,大多是以全型空白做縮排。如需服用,請自行用文字編輯器的取代功能把全型空白取代成半型空白。 註2:本部落格的內容授權請參閱部落格底部的授權宣告。
Software entities (class, modules, functions, etc.) should be open for extension, but closed for modification.- Bertrand Meyer
Junior programmers create simple solutions to simple problems. Senior programmers create complex solutions to complex problems. Great programmers find simple solutions to complex problems.- Charles Connell
註1:本部落格的範例程式碼在 2015 年以前的文章中,大多是以全型空白做縮排。如需服用,請自行用文字編輯器的取代功能把全型空白取代成半型空白。 註2:本部落格的內容授權請參閱部落格底部的授權宣告。
前一篇文章提到,我選用 ExecutorService 的主因是比較好控制 Thread 而控制的方法是把要產生的 Thread 都加入到我指定的一個 ThreadGroup 如此一來我只要用 ThreadGroup.activeCount() 就可以知道定時執行產生的 Thread 還有幾個正在執行 也可以用 Thread.enumerate(new Thread[ ]) 把 ThreadGroup 中的 Thread 列舉出來。
參考資料:How to use ThreadFactory in Java