之前我們講了通過數(shù)據(jù)庫事務(wù)來保證扣庫存的一致性,但這勢必會造成TPS降低,那么我們有辦法提高整體的TPS嗎?庫存分片就是一個不錯的解決方案。什么是庫存分片?簡單來說就是把原來...
之前我們講了通過數(shù)據(jù)庫事務(wù)來保證扣庫存的一致性,但這勢必會造成TPS降低,那么我們有辦法提高整體的TPS嗎?庫存分片就是一個不錯的解決方案。什么是庫存分片?簡單來說就是把原來...
ReentrantReadWriteLock中有2個對象ReadLock,WriteLock分別都有l(wèi)ock函數(shù):readlock.lock() readerShouldBl...
讀寫鎖概念:寫鎖排他,讀鎖共享。 tryReadLock: 上面可以看到除了和寫鎖互斥以外,讀鎖之間并不互斥。所以除了開始判斷有沒有寫鎖,之后一路順暢。
人一生中最重要的兩天就是出生那天和發(fā)現(xiàn)人生目標(biāo)的那天。(The two most important days in your life are the day you we...
先貼下大神關(guān)于sync關(guān)鍵字wait函數(shù)的帖子:https://blog.csdn.net/java_lyvee/article/details/110996764[http...
signal和signalAll大同小異,本節(jié)我們來看下signal函數(shù),signal核心調(diào)用的是doSignal,所以signal函數(shù)就不貼了:
Condition條件鎖,當(dāng)線程獲得鎖之后,可以在指定的Condition上等待或被喚醒核心函數(shù)await: 下一節(jié)將signal,await要結(jié)合signal一起看可能更清楚
線程使用的時候經(jīng)常會看到IllegalMonitorStateException異常,那么Monitor究竟是什么當(dāng)對象被實例化的時候,jvm會給該對象生成一個ObjectM...
reentrantlock中有l(wèi)ockInterruptibly函數(shù),表示可響應(yīng)中斷,之前講的lock是不會響應(yīng)中斷的: lockInterruptibly核心函數(shù): doA...
node是AQS隊列節(jié)點對象,其實node的源碼沒什么好解析的,本節(jié)看下node的數(shù)據(jù)結(jié)構(gòu)以及入隊出隊其實作者對于node的結(jié)構(gòu)在注解里說的很清晰了: 大概畫了下node過程...
之前的acquire函數(shù)會先調(diào)用tryAcquire去嘗試獲得鎖,這個在每個具體類中實現(xiàn),這里看ReentrantLock中2個實現(xiàn)。公平鎖FairSync中: 非公平鎖中:
先看之前的代碼: 之前說過當(dāng)node獲取到鎖后會跳出死循環(huán),然后會進入fianlly中,當(dāng)failed為true時進入cancelAcquire,看代碼,除了初始化的時候其實...
上一節(jié)的acquireQueued(addWaiter(Node.EXCLUSIVE), arg))函數(shù)中有一個addWaiter函數(shù),表示將當(dāng)前線程加入到排隊隊列中 讀完這...
加鎖的底層調(diào)用acquire函數(shù):tryAcquire由具體實現(xiàn)類實現(xiàn),本節(jié)看acquireQueued函數(shù) 該函數(shù)表示將已經(jīng)在隊列中的node(每個線程對應(yīng)一個node加到...
IDEA 2019.3JDK1.8Gradle 4.10.3Spring-framework-5.1.x編譯報錯 解決方案: 網(wǎng)上查的資料應(yīng)該是idea2019的bug
樓主有沒有碰到過這問題:<ij_msg_gr>Project resolve errors<ij_msg_gr><ij_nav>/Users/jiabinhao/Work/Repository/spring-framework/build.gradle<ij_nav><i><b>root project 'spring': Unable to resolve additional project configuration.</b><eol>Details: java.lang.IllegalStateException: Resolving dependency configuration 'testFixturesCompileOnly' is not allowed as it is defined as 'canBeResolved=false'.<eol>Instead, a resolvable ('canBeResolved=true') dependency configuration that extends 'testFixturesCompileOnly' should be resolved.</i>
Idea構(gòu)建Spring問題解決軟件 Idea 2020.1 Jdk 1.8 gradle-5.5.1 問題一 Idea和Spring Kotlin版本不一致解決方法 查看IEDA kotlin版本imag...
最近在擼快排,發(fā)現(xiàn)網(wǎng)上寫的千篇一律,理論定義的步驟和代碼稍有些區(qū)別,所以按我自己理解的在整理一遍首先抄一下網(wǎng)上的定義和模擬圖: 從數(shù)列中挑出一個元素,稱為 “基準(zhǔn)”(pivo...
什么是中臺? 我自己理解,中臺就是對相同業(yè)務(wù),技術(shù),模型,數(shù)據(jù)的抽象整合,對外提供統(tǒng)一的能力,并能讓后續(xù)工作者能在此基礎(chǔ)上快速迭代。關(guān)鍵詞有幾個,“整合”,“統(tǒng)一能力“。社會...