Was ist der Unterschied zwischen Wait() und Sleep() in Java?

4 Antworten


  • 1) Sleep ist eine Thread-Methode, Wait ist eine Object-Methode.
    2) Interrupt () kann verwendet werden, um einen Thread aus dem Ruhezustand aufzuwecken, benachrichtigen () und benachrichtigenAll () können verwendet werden, um aus dem Wartezustand aufzuwachen
    3) Die Sleep-Methode gibt die Sperre nicht nach Abschluss des Tines frei, die Wait-Methode jedoch ...
  • Wait wartet, bis der andere Prozess abgeschlossen ist oder ein Widerruf (nicht sicher über den Namen der Methode) aufgerufen wird, während sleep für die angegebene Zeitdauer schläft.
  • Wie wir wissen, unterstützt die Programmiersprache Java das Multi-Threading-Konzept. Die Threads laufen gleichzeitig, wenn Sie die Ausführung eines Threads stoppen und einem anderen Thread die Kontrolle geben möchten diese beiden Funktionen werden von Java für den Zweck unterstützt

    Wait() : Diese Funktion nimmt Parameter als Millisekunden und legt den Thread in Wartezustand für die vom Programmierer gewünschte Zeit nach Ablauf der Zeit beginnt die Ausführung erneut.

    Sleep() : Diese Funktion wird auch für den gleichen Zweck verwendet Mit seiner Funktion von Java können Sie einen Thread in den Schlafzustand versetzen be Notify().oder andere Funktionen werden ebenfalls von Java bereitgestellt.

    Der Hauptunterschied zwischen Wait() und sleep() besteht also darin, dass wait den Zeitparameter benötigt und nur für eine bestimmte Zeit wartet, und dass sleep einen Thread für eine unbestimmte Zeit in den Ruhemodus wirft.
  • Sie haben geschrieben, dass "sleep keine Parameter enthält, damit der Thread nicht automatisch mit der Ausführung beginnt"

    Ich
    füge die Signatur hinzu: Public static native void sleep(long millis) wirft InterruptedException;

    Bitte werfen Sie einen Blick auf die Signatur und aktualisieren Sie Ihre Antwort

Schreibe deine Antwort

Ihre Antwort erscheint nach der Moderation appear