codingapi / codingapi/tx-lcn

LockContext map Concurrent Question

Offen
#553 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
Java
Sterne
4.2k
Forks
1.4k
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

- [ ] I have searched the [issues](https://github.com/codingapi/tx-lcn/issues) of this repository and believe that this is not a duplicate.

### 1. Bug Description
LockContext
private Map map;
private LockContext() {
map = new ConcurrentHashMap<>();

cacheList = new CopyOnWriteArrayList<>();

freeList = new LinkedList<>();
}

map is ConcurrentHashMap 但是你在操作这个元素时 加锁防止脏读,污写 ,完全没必要了

### 4. Tour Idea
既然是ConcurrentHashMap 完全可以把synchronized 锁去掉,而且不会脏读,重复添加, 这样做牺牲性能了

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Rechercherichtung

Beginne damit, LockContext zu lokalisieren und zu prüfen, wie auf seine ConcurrentHashMap, cacheList und freeList zugegriffen wird. Überprüfe jede synchronisierte Operation auf Atomizität sowie auf Risiken durch Duplikate oder veraltete Zustände; als erledigt gilt die Aufgabe, wenn die Sperränderung durch die tatsächlichen Zugriffsmuster gerechtfertigt und anhand des relevanten Nebenläufigkeitsverhaltens validiert ist.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
java
Bereich
distributed-systems
Issue-Typ
Refactoring
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
25/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.