public static class Thread3 extends Thread {
public void run() {
while(true) {
try {System.out.println("Ура");Thread.sleep(500);} catch (InterruptedException e) {}
}
}
}
первый вопрос:
Почему этот код выше выполняется правильно, а остальные не выводят "Ура"?
1) while(true) {
try {Thread.sleep(500);} catch (InterruptedException e) {}
System.out.println("Ура");
}
2) while(true) {
try {Thread.sleep(500);System.out.println("Ура");} catch (InterruptedException e) {}
}
Второй вoпрос: Почему четвёртая нить прекращает свое выполнение? Решение подсмотрел.
public static class Thread4 extends Thread implements Message{
private boolean myStop = false;
@Override
public void showWarning() {
myStop = true;
}
@Override
public void run() {
try {
while ( !myStop ) {
Thread.sleep(0);
}
} catch (InterruptedException e) {}
}
}
Третий вопрос: Как использовать метод isAlive()? В интернете вроде почитал - не понял.