Hoe laat je een thread sterven in Java?
Hoe laat je een thread sterven in Java?

Video: Hoe laat je een thread sterven in Java?

Video: Hoe laat je een thread sterven in Java?
Video: Java threads 🧵 2024, Mei
Anonim

Alle Draad s dood gaan ofwel door terug te keren van de aanroep naar de run-methode of door een uitzondering te genereren die zich buiten de run-methode voortplant.

Draden sterven in de volgende situaties:

  1. Wanneer de methode die wordt uitgevoerd is voltooid (of gooit)
  2. Wanneer het proces is beëindigd.
  3. Wanneer de computer is uitgeschakeld of opnieuw is ingesteld.

Als je dit in overweging neemt, welke gebeurtenissen zullen ervoor zorgen dat een draad sterft?

EEN draad kan sterven op twee manieren: ofwel van natuurlijk oorzaken , of door te worden gedood (gestopt). EEN draad sterft natuurlijk wanneer de methode run() normaal wordt afgesloten.

Evenzo, wat is een dode draad? EEN draad wordt overwogen dood zodra de methode run() de uitvoering heeft voltooid. Zodra de draad voltooit de methode run() en dood , het kan niet worden teruggebracht naar draad van uitvoering of zelfs tot uitvoerbare staat. De methode start() aanroepen op a dode draad veroorzaakt runtime-uitzondering.

Wat dit betreft, hoe dood je een thread in Java?

Er is geen manier om gracieus te doden een draad . Over het algemeen doe je dat niet doden , stop of onderbreek a draad (of controleer of het onderbroken is()), maar laat het beëindigen van nature. Het is simpel. Je kunt elke lus gebruiken samen met (vluchtige) booleaanse variabele binnen de methode run() om te controleren draad's werkzaamheid.

Hoe stop je een draad?

Moderne manieren om op te schorten/ stop een draadje zijn met behulp van een booleaanse vlag en Draad . interrupt() methode. Een booleaanse vlag gebruiken: we kunnen een booleaanse variabele definiëren die wordt gebruikt voor: stoppen /doden draden 'uitgang' zeggen. Wanneer we willen stop een draadje , wordt de variabele 'exit' op true gezet.

Aanbevolen: