Здравствуйте!
Подскажите пожалуйста, почему мое решение работает для countSeconds = 4, только если Thread.sleep метода main больше 4-х секунд?
package com.javarush.task.task16.task1617;
/*
Отсчет на гонках
*/
public class Solution {
public static volatile int countSeconds = 3;
public static void main(String[] args) throws InterruptedException {
RacingClock clock = new RacingClock();
Thread.sleep(3500);
clock.interrupt();
//add your code here - добавь код тут
}
public static class RacingClock extends Thread {
public RacingClock() {
start();
}
public void run() {
double i = 0;
try {
for (; countSeconds>0; countSeconds--){
System.out.print(countSeconds+" ");
Thread.sleep(1000);
i++;
}
}catch (InterruptedException e){}
//add your code here - добавь код тут
if (i>3.5) { System.out.print("Прервано!");
}else System.out.println("Марш!");
}
}
}