while schleife in der runmethode

Stevvieboy

Mitglied
Hallo,

ich habe eine Verständnisfrage. Es geht um folgendes Coding:

Java:
class MyThread extends Thread
{
   public void run()
   {
      int i = 0;
      while (true) 
      {
      while(!liste.isempty())
       {
         machwas; 
      }
   }
}


public class Example1001
{
   public static void main(String[] args)
   {
      MyThread t = new MyThread();
      t.start();
   }
}

meine frage wäre, ist die whileschleife while(true) in der runmethode eine endlosschleife? läuft sie im hintergrund die ganze zeit und schaut ob die liste einen eintrag hat, wenn sie einen eintrag hat führt er "macht was" aus , habe ich das so richtig verstanden ?

danke für die hilfe
 
ja, es ist eine endlosschleife. Und da es kein Deamon Thread ist, läuft auch das Programm "Endlos".

generell ist while(!isInteruppted()) besser, da es ansonsten keine saubere Möglichkeit gibt, den Thread zu beenden.
 
Dann würde sich zwischen den whiles auch ein Thread.sleep() anbieten.

Damit beim warten nicht so viel cpu gefressen wird.
 

Zurück
Oben