Java併發程式設計的藝術 讀書筆記第八章

2021-09-14 00:48:33 字數 288 閱讀 6166

countdownlatch允許乙個或多個執行緒等待其他執行緒完成操作。

cyclicbarrier的字面意思是可迴圈使用(cyclic)的屏障(barrier)。它要做的事情是,讓一組執行緒到達乙個屏障(也可以叫同步點)時被阻塞,直到最後乙個執行緒到達屏障時,屏障才會開門,所有被屏障攔截的執行緒才會繼續執行。

semaphore(訊號量)是用來控制同時訪問特定資源的執行緒數量,它通過協調各個執行緒,以保證合理的使用公共資源。

exchanger(交換者)是乙個用於執行緒間協作的工具類。exchanger用於進行執行緒間的資料交換。

java併發程式設計的藝術 讀書筆記 01

1.1.1 多執行緒一定快嗎?下面 並行一定比序列執行的快嗎?public class concurrencytest private static void concurrency throws interruptedexception 啟動執行緒 thread.start int b 0 for...

讀書筆記 java併發程式設計的藝術3 4章

可見性 對乙個volatile變數的讀,總是能看到 任意執行緒 對這個volatile變數最後的寫入。原子性 如果是多個volatile操作或類似於volatile 這種復合操作,整體上不具有原子性 當第二個操作是volatile寫時,不管第乙個操作是什麼,都不能重排序。這個規則確保volatile...

Java併發 JAVA併發程式設計實戰 讀書筆記3

發布乙個物件的意思是使它能夠被當前範圍之外的 所使用。比如將乙個引用儲存到其他 可以訪問的地方,在乙個非私有的方法中返回這個引用。在很多情況下,我們需要確保物件及它們的內部狀態不被暴露。乙個物件在尚未準備好時就將它發布,稱作逸出。最常見的發布物件的方式就是將物件的引用儲存到公共靜態域中,任何類和執行...