Hallo,
Als Beispiel sei das Beispiel als Galileo Openbooks "Java ist auch eine Insel" gegeben:
Die Ausgabe sieht wie folgt aus:
Es gibt ein Leben vor dem Tod.
Und er läuft und er läuft und er läuft
Und er läuft und er läuft und er läuft
Und er läuft und er läuft und er läuft
Und er läuft und er läuft und er läuft
Unterbrechung in sleep()
Das Ende
Galileo Computing :: Java ist auch eine Insel – 14.3 Thread-Eigenschaften und -Zustände
Ich verstehe dieses Beispiel nicht so ganz...
Der Thread wird gestartet, gibt dann Es gibt ein Leben vor dem Tod. aus und steigt dann in die while-Schleife ein. Dort wird der Thread dann für 0,5 Sekunden schlafen gelegt. Falls das schlafen eine Exception auslöst, wird der Thread unterbrochen, was aber im Normalfall ja nicht geschieht?!
Nach meinem Verständniss müsste dieses Programm doch eine Endlossschleife sein?! Wo ist da mein Denkfehler? ???:L
Als Beispiel sei das Beispiel als Galileo Openbooks "Java ist auch eine Insel" gegeben:
Java:
Thread t = new Thread()
{
@Override
public void run()
{
System.out.println( "Es gibt ein Leben vor dem Tod. " );
while ( ! isInterrupted() )
{
System.out.println( "Und er läuft und er läuft und er läuft" );
try
{
Thread.sleep( 500 );
}
catch ( InterruptedException e )
{
interrupt();
System.out.println( "Unterbrechung in sleep()" );
}
}
System.out.println( "Das Ende" );
}
};
t.start();
Thread.sleep( 2000 );
t.interrupt();
Die Ausgabe sieht wie folgt aus:
Es gibt ein Leben vor dem Tod.
Und er läuft und er läuft und er läuft
Und er läuft und er läuft und er läuft
Und er läuft und er läuft und er läuft
Und er läuft und er läuft und er läuft
Unterbrechung in sleep()
Das Ende
Galileo Computing :: Java ist auch eine Insel – 14.3 Thread-Eigenschaften und -Zustände
Ich verstehe dieses Beispiel nicht so ganz...
Der Thread wird gestartet, gibt dann Es gibt ein Leben vor dem Tod. aus und steigt dann in die while-Schleife ein. Dort wird der Thread dann für 0,5 Sekunden schlafen gelegt. Falls das schlafen eine Exception auslöst, wird der Thread unterbrochen, was aber im Normalfall ja nicht geschieht?!
Nach meinem Verständniss müsste dieses Programm doch eine Endlossschleife sein?! Wo ist da mein Denkfehler? ???:L