Können wir einen Thread in Java neu starten?
Können wir einen Thread in Java neu starten?

Video: Können wir einen Thread in Java neu starten?

Video: Können wir einen Thread in Java neu starten?
Video: Java Threads Tutorial: So verbesserst du dein Programm mit Multithreading! 2024, Dezember
Anonim

Seit einem Thread kann nicht sein hat dich neu gestartet verfügen über zu erstelle eine neue Gewinde jedes Mal. Eine bessere Praxis ist zu den Code trennen zu laufen in a Gewinde von einem Gewinde 's Lebenszyklus durch die Verwendung der Runnable-Schnittstelle. Extrahieren Sie einfach die run-Methode in einer Klasse, die Runnable implementiert. Dann du kannst leicht neu starten es.

Außerdem, wie starten und stoppen wir einen Thread?

In der heutigen Java-Version können Sie einen Thread stoppen indem Sie eine boolesche flüchtige Variable verwenden. Falls du dich erinnerst, Fäden auf Java Anfang Ausführung von der Methode run() und halt , wenn es aus der Methode run() kommt, entweder normal oder aufgrund einer Ausnahme. Sie können diese Eigenschaft nutzen, um halt das Gewinde.

Was ist ein toter Thread? EIN Gewinde gilt als tot sobald seine run()-Methode die Ausführung abgeschlossen hat. Sobald die Gewinde vervollständigt seine run()-Methode und tot , es kann nicht zurückgebracht werden Gewinde der Ausführung oder sogar in den lauffähigen Zustand. Aufruf der Methode start() auf a toter Faden verursacht Laufzeitausnahme.

Ähnlich kann man sich fragen, wie man ein Java-Programm neu startet?

Streng genommen, a Java-Programm kann nicht neu starten sich selbst, da es dazu die JVM, in der sie ausgeführt wird, beenden und dann erneut starten muss, aber sobald die JVM nicht mehr ausgeführt (gekillt) wird, kann keine Aktion mehr ausgeführt werden.

Wie beendet man einen Thread in Java?

Es gibt keine Möglichkeit, anmutig töten ein Gewinde . Im Allgemeinen nicht töten , stoppen oder unterbrechen a Gewinde (oder überprüfen Sie, ob es unterbrochen ist (), aber lassen Sie es kündigen natürlich. Es ist einfach. Sie können jede Schleife zusammen mit einer (flüchtigen) booleschen Variablen innerhalb der run()-Methode verwenden, um zu steuern Threads Aktivität.

Empfohlen: