原文:並發王者課-鉑金9:互通有無-Exchanger如何完成線程間的數據交換

歡迎來到 並發王者課 ,本文是該系列文章中的第 篇,鉑金中的第 篇。 在前面的文章中,我們已經介紹了ReentrantLock,CountDownLatch,CyclicBarrier,Semaphore等同步工具。在本文中,將為你介紹最后一個同步工具,即Exchanger. Exchanger用於兩個線程在某個節點時進行數據交換。在用法上,Exchanger並不復雜,但是實現上會稍微有點費解。所 ...

2021-07-08 10:21 0 182 推薦指數:

查看詳情

並發王者-鉑金4:令行禁止-為何說信號量是線程的同步利器

歡迎來到《並發王者》,本文是該系列文章中的第17篇。 在並發編程中,信號量是線程同步的重要工具。在本文中,我將帶你認識信號量的概念、用法、種類以及Java中的信號量。 信號量(Semaphore) 是線程的同步結構,主要用於多線程協作時的信號傳遞,以及對共享資源的保護、防止競態的發生 ...

Tue Jun 22 18:17:00 CST 2021 0 199
並發王者-鉑金10:能工巧匠-ThreadLocal如何為線程打造私有數據空間

歡迎來到《並發王者》,本文是該系列文章中的第23篇,鉑金中的第10篇。 說起ThreadLocal,相信你對它的名字一定不陌生。在並發編程中,它有着較高的出場率,並且也是面試中的高頻面試題之一,所以其重要性不言而喻。當然,它也可能曾經讓你在夜里輾轉反側,或讓你在面試時閃爍其詞 ...

Mon Jul 12 18:12:00 CST 2021 0 203
並發王者-鉑金7:整齊划一-CountDownLatch如何協調多線程的開始和結束

歡迎來到《並發王者》,本文是該系列文章中的第20篇。 在上一篇文章中,我們介紹了Condition的用法。在本文中,將為你介紹CountDownLatch的用法。CountDownLatch是JUC中的一款常用工具類,當你在編寫多線程代碼時,如果你需要協調多個線程的開始和結束動作時,它可 ...

Fri Jul 02 18:56:00 CST 2021 2 184
並發王者-鉑金8:峽谷幽會-看CyclicBarrier如何跨越重巒疊嶂

歡迎來到《並發王者》,本文是該系列文章中的第21篇,鉑金中的第8篇。 在上一篇文章中,我們介紹了CountDownLatch的用法。在協調多線程的開始和結束時,CountDownLatch是個非常不錯的選擇。而本文即將給你介紹的CyclicBarrier則更加有趣,它在能力 ...

Mon Jul 05 21:51:00 CST 2021 0 169
並發王者-鉑金2:豁然開朗-“晦澀難懂”的ReadWriteLock竟如此妙不可言

歡迎來到《並發王者》,本文是該系列文章中的第15篇。 在上篇文章中,我們介紹了Java中鎖的基礎Lock接口。在本文中,我們將介紹Java中鎖的另外一個重要的基本型接口,即ReadWriteLock接口。 在探索Java中的並發時,ReadWriteLock無疑是重要的,然而理解它卻並不 ...

Fri Jun 18 17:58:00 CST 2021 0 157
並發王者-鉑金5:致勝良器-無處不在的“阻塞隊列”究竟是何面目

歡迎來到《並發王者》,本文是該系列文章中的第18篇。 在線程的同步中,阻塞隊列是一個繞不過去的話題,它是同步器底層的關鍵。所以,我們在本文中將為你介紹阻塞隊列的基本原理,以了解它的工作機制和它在Java中的實現。本文稍微有點長,建議先了解大綱再細看章節。 一、阻塞隊列介紹 在生活中,相信你 ...

Mon Jun 28 18:18:00 CST 2021 0 173
並發王者-鉑金6:青出於藍-Condition如何把等待與通知玩出新花樣

歡迎來到《並發王者》,本文是該系列文章中的第19篇。 在上一篇文章中,我們介紹了阻塞隊列。如果你閱讀過它的源碼,那么你一定會注意到源碼有兩個Condition類型的變量:notEmpty和notFull,在讀寫隊列時你也會注意到它們是如何被使用的。事實上,在使用JUC中的各種鎖時 ...

Thu Jul 01 18:33:00 CST 2021 0 156
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM