fuzhengwei / fuzhengwei/CodeGuide
面经手册第17篇《ReentrantLock之AQS原理分析和实践使用》中图的问题
- Vorherrschende Sprache
- Shell
- Sterne
- 11.9k
- Forks
- 4.2k
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
图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 周大拿
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Rechercherichtung
Beginne mit dem Artikel „面经手册第17篇《ReentrantLock之AQS原理分析和实践使用》“ und vergleiche dessen 图17-2 unter der verlinkten Bild-URL mit der Beschreibung von nonfairTryAcquire im Issue. Aktualisiere das Diagramm so, dass die Rückgabeverzweigungen, das CAS-Ergebnis, der Besitz des Locks und der Reentrant-Pfad dem beschriebenen Verhalten entsprechen; im Issue ist keine Test- oder Quelldatei angegeben.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- java
- Bereich
- documentation
- Issue-Typ
- Dokumentation
- Schwierigkeit
- 2/5
- Geschätzter Aufwand
- 1-3 Stunden
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 50/100