Heim  >  Artikel  >  Java  >  Der Unterschied zwischen Schlafen und Warten in JAVA

Der Unterschied zwischen Schlafen und Warten in JAVA

(*-*)浩
(*-*)浩Original
2019-12-26 11:53:482559Durchsuche

Der Unterschied zwischen Schlafen und Warten in JAVA

Die Methode wait() bedeutet, dass der aktuelle Thread sich erlaubt, die Synchronisationsressourcensperre vorübergehend aufzugeben, sodass andere Threads, die auf die Ressource warten, die Ressource abrufen und nur ausführen können Wenn die notify()-Methode aufgerufen wird, wird der Thread, der zuvor wait() aufgerufen hat, aus dem Wartezustand entlassen und kann am Wettbewerb um die Synchronisierungsressourcensperre teilnehmen und dann ausgeführt werden.

Die Methode „sleep()“ kann überall verwendet werden; die Methode „wait()“ kann nur in synchronisierten Methoden oder synchronisierten Blöcken verwendet werden (Empfohlenes Lernen: Java-Kurs). )

sleep() ist eine Methode der Thread-Klasse (Thread). Durch den Aufruf wird der Thread für die angegebene Zeit angehalten, die Überwachung wird jedoch weiterhin aufrechterhalten, die Objektsperre wird nicht aufgehoben wird automatisch fortgesetzt, wenn die Zeit abgelaufen ist;

wait() ist eine Methode von Object. Der Aufruf gibt die Objektsperre auf und gelangt erst in den Sperrpool, wenn notify()/. notifyAll() wird aufgerufen, um den angegebenen Thread oder alle Threads aufzuwecken. Es wird erst dann aktiviert, wenn die Objektsperre erneut erreicht wird.

Das Lebenszyklusdiagramm von Threads in Java ist wie folgt :

Der Unterschied zwischen Schlafen und Warten in JAVA

Das obige ist der detaillierte Inhalt vonDer Unterschied zwischen Schlafen und Warten in JAVA. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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