Die Betriebsumgebung dieses Tutorials: Windows 7-System, Java 10-Version, DELL G3-Computer.
1. Neu : Threads, die nach der Erstellung nicht gestartet wurden, befinden sich in diesem Status.
2. Runnable : Enthält „Running“ und „Ready“ im Thread-Status des Betriebssystems. Das heißt, der Thread in diesem Status wird möglicherweise ausgeführt oder wartet darauf, dass das Betriebssystem ihm Ausführungszeit zuweist.
3. Warten : Threads in diesem Zustand wird keine Prozessorausführungszeit zugewiesen. Sie müssen warten, bis sie explizit von anderen Threads aktiviert werden. Die folgende Methode führt dazu, dass der Thread in einen Wartezustand fällt:
Die Methode Object::wait() legt den Timeout-Parameter nicht fest;
Thread::join()-Methode ohne Einstellung des Timeout-Parameters;
LockSupport::park()-Methode.
4. Zeitgesteuertes Warten : Threads in diesem Zustand wird keine Prozessorausführungszeit zugewiesen, sie müssen jedoch nicht darauf warten, explizit von anderen Threads geweckt zu werden. Sie werden vom System nach einer bestimmten Zeitspanne automatisch geweckt. Die folgende Methode versetzt den Thread in einen Deadline-Wartezustand:
Object::wait()-Methode mit Timeout-Parametersatz;
Thread::join()-Methode mit Timeout-Parametersatz;
LockSupport::parkNanos()-Methode;
LockSupport::parkUntil()-Methode.
5. Blockiert : Der Unterschied zwischen „Blockiert“ und „Wartezustand“ besteht darin, dass ein anderer Thread darauf wartet, eine Sperre zu erhalten „Wartezustand“ ist das Warten auf einen bestimmten Zeitraum oder darauf, dass die Weckaktion ausgeführt wird. Der Thread wechselt in diesen Zustand, während das Programm darauf wartet, den Synchronisationsbereich zu betreten.
6. Beendet : Der Thread-Status des beendeten Threads, der Thread hat die Ausführung beendet.
Das Obige sind die sechs Zustände von Java-Threads. Ich hoffe, dass sie für alle hilfreich sein können.
Weitere Java-Lernanleitungen: Java-Tutorial