(手機橫屏看源碼更方便) 引子 大家知道,我最近在招人,今天遇到個同學,他的源碼看過一些,然后我就開始了AQS連環問。 我:說說AQS的大致流程? 他:AQS包含一個狀態變量,一個同步 ...
(手機橫屏看源碼更方便) 引子 大家知道,我最近在招人,今天遇到個同學,他的源碼看過一些,然后我就開始了AQS連環問。 我:說說AQS的大致流程? 他:AQS包含一個狀態變量,一個同步 ...
鎖是最常用的同步方法之一,在高並發的環境下激烈的鎖競爭會導致程序的性能下降,所以我們自然有必要深入的學習一下鎖的相關知識。 java的內置鎖一直都是備受爭議的,在J ...
本文基於 jdk 1.8 。 CountDownLatch 的使用 前面的文章中說到了 volatile 以及用 volatile 來實現自旋鎖,例如 java.util.concurr ...
為充分利用機器性能,人們發明了多線程。但同時帶來了線程安全問題,於是人們又發明了同步鎖。 這個問題自然人人知道,但你真的了解同步鎖嗎?還是說你會用其中的上鎖與解鎖功能? 今天我們就一起 ...
線程池學習 以下所有內容以及源碼分析都是基於JDK1.8的,請知悉。 我寫博客就真的比較沒有順序了,這可能跟我的學習方式有關,我自己也覺得這樣挺不好的,但是沒辦法說服自己去改變,所以也只 ...
寫在前面的話 最近一直在邊工作邊學習分布式的東西,看到了構建Java中間件的基礎知識,里面有提到Java多線程並發的工具類,例如ReentrantLock、CyclicBarrier、Co ...
歡迎關注我的公眾號“彤哥讀源碼”,查看更多源碼系列文章, 與彤哥一起暢游源碼的海洋。 (手機橫屏看源碼更方便) 問題 (1)自己動手寫一個線程池需要考慮哪些因素? (2)自己動手寫的線 ...
(手機橫屏看源碼更方便) 注:java源碼分析部分如無特殊說明均基於 java8 版本。 注:本文基於ForkJoinPool分治線程池類。 簡介 隨着在硬件上多核處理器的發展和廣泛使 ...
沉淀再出發:關於java中的AQS理解 一、前言 在java中有很多鎖結構都繼承自AQS(AbstractQueuedSynchronizer)這個抽象類如果我們仔細了解可以發現AQS的作 ...
AQS其實就是java.util.concurrent.locks.AbstractQueuedSynchronizer這個類。 閱讀Java的並發包源碼你會發現這個類是整個java.util.con ...