Heim > Java > javaLernprogramm > Hauptteil

Welche Möglichkeiten gibt es, Lock in Java zu verwenden?

王林
Freigeben: 2023-04-23 20:52:05
nach vorne
1906 Leute haben es durchsucht

1. Funktion

(1) Die Lock-Methode unterstützt Unterbrechungen, keine Erfassung nach Zeitüberschreitung und ist nicht blockierend

(2) Verbesserte Semantik, wo gesperrt und entsperrt werden soll, muss ausgeschrieben werden

(3)Sperren Eine explizite Sperre kann uns gute Flexibilität bringen, aber gleichzeitig müssen wir die Sperre manuell aufheben

(4) Bedingungsbedingungsobjekt unterstützen

(5) Erlauben Sie mehreren Lesethreads gleichzeitig den Zugriff auf gemeinsam genutzte Ressourcen

2 . Sperrenverwendung

// 获取锁  
void lock()   
 
// 如果当前线程未被中断,则获取锁  
void lockInterruptibly()   
 
// 返回绑定到此 Lock 实例的新 Condition 实例  
Condition newCondition()   
 
// 仅在调用时锁为空闲状态才获取该锁  
boolean tryLock()   
 
// 如果锁在给定的等待时间内空闲,并且当前线程未被中断,则获取锁  
boolean tryLock(long time, TimeUnit unit)   
 
// 释放锁  
void unlock()
Nach dem Login kopieren

lock(), tryLock(), tryLock(long time, TimeUnit-Einheit) und lockInterruptably() werden zum Erlangen von Sperren verwendet. Zum Aufheben der Sperre wird die Methode unLock() verwendet. Die Methode newCondition() wird für die Kommunikation zwischen Threads verwendet.

Das obige ist der detaillierte Inhalt vonWelche Möglichkeiten gibt es, Lock in Java zu verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:yisu.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage