Я наткнулся на некоторый код Java, в котором есть метод, содержащий следующее:
static boolean waitForSeconds(long seconds) {
try {
Thread.sleep(seconds * 1000);
} catch (InterruptedException ex) {
return false;
}
return true;
}
Какова может быть цель этого?Возвращаемое значение используется для определения необходимости продолжения вычислений.Мне кажется странным пытаться спать в течение 1 секунды с единственной целью проверить, был ли поток прерван в течение этой секунды.
Код, вызывающий этот метод, пытается выполнить то же самое, что thread.isInterrupted()?Что бы он ни пытался сделать, есть ли лучший способ?
Вызов waitForSeconds появляется в верхней части другого метода, а не внутри цикла, поэтому, если этот код намеревается подождать секунду для некоторогоВ дополнение к проверке на прерывание, кажется, что это будет проверка в неправильном месте.Не лучше ли поставить сон рядом с циклом, где будет яснее, что он делает?
На последний вопрос, пожалуйста, ответьте здесь:
Это так?яснее спать возле вызова функции в цикле или в самом вызове функции?