Das muss wirklich offensichtlich sein, aber ich kann die Antwort nicht erkennen. Ich muss eine Variable um eine Variable legen, um sicherzustellen, dass einige rassgefährdende Bedingungen vermieden werden. Von dem, was ich sehen kann, existiert eine ziemlich einfache Lösung mit Lock, entsprechend den Androiden:
%Vor%So weit, so gut. Allerdings kann ich nicht die erste Zeile arbeiten. Es scheint so etwas wie:
%Vor%Stimmt möglicherweise, aber Eclipse-Berichte: "Der Typ kann nicht instanziert werden" - und nicht mehr.
Irgendwelche Vorschläge?
Wenn Sie sehr daran interessiert sind, Lock
zu verwenden, müssen Sie eine Lock
-Implementierung wählen, da Sie Interfaces nicht instanziieren können.
Wie in den Dokumenten
Sie haben 3 Möglichkeiten:
Condition
s sind an Lock
s gebunden. Sie suchen wahrscheinlich nach dem ReentrantLock
möglicherweise mit einigen Condition
s
Das bedeutet, dass Sie anstelle von Lock l = new Lock();
Folgendes tun würden:
Wenn jedoch alles, was Sie sperren müssen, ein kleiner Teil ist, ist eine synchronisierte Block / Methode sauberer (wie von @Leonidos & amp; @assylias vorgeschlagen).
Wenn Sie eine Methode zum Festlegen des Werts haben, können Sie Folgendes tun:
%Vor%oder wenn dies ein Teil einer größeren Methode ist:
%Vor% Nur weil Lock
eine Schnittstelle ist und nicht instanziiert werden kann. Verwenden Sie seine Unterklassen.