fuzhengwei / fuzhengwei/CodeGuide

面经手册第17篇《ReentrantLock之AQS原理分析和实践使用》中图的问题

Aperta
#347 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
Shell
Stelle
11.9k
Fork
4.2k
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

图17-2 :https://bugstack.cn/assets/images/2020/interview/interview-17-2.png
1、nonfairTryAcquire根据源码应该是一个逻辑分支 final boolean nonfairTryAcquire(int acquires) 返回true和false两种情况,应该是一一个“菱形”选择分支。
2、nonfairTryAcquire其中有个子流程 (如果state=0 则**cas修改** 设置独占线程并返回true,如果state!=0 则判断是否当前线程重入? 是的话State+1 返回true,其他情况均为false)
3、**cas修改**共享变量是否成功 并不是 进入current == getExclusiveOwnerThread() 的判断条件,且修改成功后 说明获得了锁 与流程图中不符。

欢迎各位一起交流指导:v信:JinLS1216 周大拿

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Direzione di ricerca

Inizia dall’articolo «面经手册第17篇《ReentrantLock之AQS原理分析和实践使用》» e confronta il relativo 图17-2 all’URL dell’immagine collegata con la descrizione di nonfairTryAcquire nell’issue. Aggiorna il diagramma in modo che i rami di ritorno, il risultato del CAS, la proprietà del lock e il percorso rientrante corrispondano al comportamento descritto; nell’issue non è identificato alcun file di test o file sorgente.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
java
Ambito
documentation
Tipo di issue
Documentazione
Difficoltà
2/5
Tempo stimato
1-3 ore
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
50/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.