Im laufenden Zyklus des Java-Threads gibt es die folgenden Zustände:
NEU
Dieser Zustand ist Dies bedeutet, dass der Thread gerade erst erstellt und noch nicht gestartet wurde.
2. RUNNABLE
zeigt an, dass der Thread normal ausgeführt wird. Natürlich kann es zu zeitaufwändigen Berechnungen/E/A-Wartevorgängen/CPU-Zeitscheibenwechsel kommen. usw. Das Warten, das im Status auftritt, betrifft im Allgemeinen andere Systemressourcen, nicht Sperren, Schlaf usw.
(Empfohlenes Video-Tutorial: Java-Video)
3. BLOCKIERT
In diesem Zustand werden mehrere Threads ausgeführt sind Szenarien synchroner Vorgänge, z. B. das Warten auf die Ausführungsfreigabe des synchronisierten Blocks eines anderen Threads oder das Aufrufen der Methode wait () durch eine andere Person in einem wiedereintretenden synchronisierten Block, was bedeutet, dass der Thread darauf wartet, in den kritischen Abschnitt einzutreten.
4. WAITING
Dieser Zustand bedeutet, dass der Thread, nachdem er eine bestimmte Sperre besitzt, seine Wartemethode aufruft und darauf wartet, dass andere Threads/Sperrenbesitzer notify aufrufen. / notifyAll einmal, kann der Thread mit dem nächsten Vorgang fortfahren.
Hier müssen wir den Unterschied zwischen BLOCKED und WATING unterscheiden. Einer wartet auf den Eintritt außerhalb des kritischen Punkts und der andere wartet darauf, dass andere innerhalb des Verständnispunkts benachrichtigt werden Wenn Sie einem anderen Thread beitreten, wird dies ebenfalls der Fall sein. Wechselt in den Wartezustand und wartet auf das Ende der Ausführung des Threads, dem er beigetreten ist.
5. TIMED_WAITING
Dieser Zustand ist begrenzt (zeitlich begrenzt) WAITING, was im Allgemeinen auftritt, wenn Wait(long), Join(long) usw. aufgerufen werden. Nachdem ein anderer Thread in den Ruhezustand versetzt wurde, wechselt er ebenfalls in den Status TIMED_WAITING.
6. TERMINATED
Dieser Zustand zeigt an, dass die Ausführungsmethode des Threads ausgeführt wurde, was im Grunde einem Tod entspricht (wenn der Thread dabei dauerhaft gehalten wird). Zeit, darf nicht recycelt werden).
Empfohlenes Tutorial: Java-Einstiegsprogramm
Das obige ist der detaillierte Inhalt vonWas sind die verschiedenen Zustände von Java-Threads?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!