原文:並發王者課-鉑金10:能工巧匠-ThreadLocal如何為線程打造私有數據空間

歡迎來到 並發王者課 ,本文是該系列文章中的第 篇,鉑金中的第 篇。 說起ThreadLocal,相信你對它的名字一定不陌生。在並發編程中,它有着較高的出場率,並且也是面試中的高頻面試題之一,所以其重要性不言而喻。當然,它也可能曾經讓你在夜里輾轉反側,或讓你在面試時閃爍其詞。因為,ThreadLocal雖然使用簡單,但要理解它的原理又似乎並不容易。 然而,正所謂明知山有虎,偏向虎山行。在本文中,我 ...

2021-07-12 10:12 0 203 推薦指數:

查看詳情

品Spring:能工巧匠們對注解的“加持”

問題的描述與方案的提出 在Spring從XML轉向注解時,為了自身的開發方便,對注解含義進行了擴充( 具體參考本號上一篇文章 )。 這個擴充直接導致了一個問題,就是需要從注解往元注解以及元元注解(即沿着 從下向上 的方向)里傳遞數據。 為了更好的描述 ...

Fri Sep 27 22:52:00 CST 2019 0 371
並發王者-鉑金7:整齊划一-CountDownLatch如何協調多線程的開始和結束

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

Fri Jul 02 18:56:00 CST 2021 2 184
並發王者-鉑金4:令行禁止-為何說信號量是線程間的同步利器

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

Tue Jun 22 18:17:00 CST 2021 0 199
並發王者-鉑金8:峽谷幽會-看CyclicBarrier如何跨越重巒疊嶂

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

Mon Jul 05 21:51:00 CST 2021 0 169
並發王者-鉑金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
並發王者-鉑金1:探本溯源-為何說Lock接口是Java中鎖的基礎

歡迎來到《並發王者》,本文是該系列文章中的第14篇。 在黃金系列中,我們介紹了並發中一些問題,比如死鎖、活鎖、線程飢餓等問題。在並發編程中,這些問題無疑都是需要解決的。所以,在鉑金系列文章中,我們會從並發中的問題出發,探索Java所提供的鎖的能力以及它們是如何解決這些問題的。 作為鉑金系列 ...

Wed Jun 16 18:10:00 CST 2021 2 210
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM