Můžeme restartovat vlákno v Javě?
Můžeme restartovat vlákno v Javě?

Video: Můžeme restartovat vlákno v Javě?

Video: Můžeme restartovat vlákno v Javě?
Video: Can we restart a dead thread in Java? 2024, Listopad
Anonim

Protože a Závit může nebýt restartoval vás mít na Vytvoř nový Vlákno pokaždé. Lepší praxe je na oddělte kód na běžet v a vlákno od a Vlákno životního cyklu pomocí rozhraní Runnable. Stačí extrahovat metodu run ve třídě, která implementuje Runnable. Pak můžeš snadno restartovat to.

Také, jak spustíme a zastavíme vlákno?

V dnešní verzi Java můžete zastavit vlákno pomocí booleovské těkavé proměnné. Pokuď si pamatuješ, vlákna v Javě Start spuštění z metody run() a stop , když vyjde z metody run(), buď normálně, nebo kvůli nějaké výjimce. Tuto vlastnost můžete využít stop a vlákno.

co je mrtvé vlákno? A vlákno je považován mrtví jakmile jeho metoda run() dokončí provádění. Jednou vlákno dokončí svou metodu run() a mrtví , nelze jej vrátit zpět vlákno provedení nebo dokonce do provozuschopného stavu. Vyvolání metody start() na a mrtvé vlákno způsobí výjimku za běhu.

Podobně se lze ptát, jak restartujete program Java?

Přísně vzato, a Java program nemůže restartovat sám, protože k tomu musí zabít JVM, ve kterém běží, a poté jej znovu spustit, ale jakmile JVM již neběží (zabit), nelze provést žádnou akci.

Jak zabijete vlákno v Javě?

Neexistuje žádný způsob, jak elegantně zabít A vlákno . Obecně ne zabít , zastavit nebo přerušit a vlákno (nebo zkontrolujte, zda je přerušeno()), ale nechte to vypovědět přirozeně. Je to jednoduché. K řízení můžete použít libovolnou smyčku spolu s (volatilní) booleovskou proměnnou uvnitř metody run(). vlákna aktivita.

Doporučuje: