在看一些有關於分散式運算或是分散式儲存的 open source 時常常都會在 source code 裡面看到有開 Multi Thread 的部份,有時有可能會看不懂程式的寫法或是語法的意義。因此想利用這 30 天內的時間去學習有關於 Java Thread 的部份以及介紹寫 Java Thread 的一些 Pattern。期望未來無論是開發程式或是看 Open Source 的程式時都能很快的了解程式寫法的目的。
昨天使用了 Executors 的 newScheduledThreadPool 和 newSingleThreadScheduledExecutor 方法建立...
當在執行多執行的程式時,如果有一個執行緒需要等待其它執行緒都執行再繼續使用。則可以考慮使用 java.util.concurrent package 下的 Co...
昨天介紹了 CountDownLatch 類別,它主要用來等待所有的執行緒都執行完成之後程式才會繼續往下的執行。今天介紹另外一個在 java.util.conc...
當我們在使用多執行緒在執行程式時,如果有使用到存取共享變數時通常都會進行 synchronized 或是 lock 住,但是這樣做的話在執行多執行緒的效能就會變...
Balking 模式主要的目的就是當條件不成立時就不會進行處理的動作,這個適合的使用情境是在系統初始化時會被使用到,例如在系統第一次啟動的時侯會建立一些設定檔,...
今天要介紹 Single Threaded Execution 模式,其實從它的字面翻譯就可以知道它是一個單執行緒執行模式,在什麼情境之下會使用到此模式?主要是...
今天來介紹 Guarded Suspension 模式,它的主要目的是當條件沒有成立時會進行一直循環的等待,等待條件成立時才會進行通知繼續來執行。主要的使用情境...
今天要介紹一種常見的模式 Producer Consumer 模式,它主要是將生產資料和消費資料二個部份分開來處理,在 Producer 和 Consumer...
今天介紹 Worker Thread 模式,它是用來處理客戶請求工作的執行緒模式。例如有多個客戶每一個客戶都有一個案子要交給工人來做,這個工人的數量有可能會少於...
Thread Per Message 模式是指每一個 Message 會給一個 Thread 去處理,就像是射後不理只要把工作分配給其它執行緒去處理之後就不會去...