Я делаю что-то действительно глупо здесь? Я пытаюсь выполнить метод каждую минуту или так, навсегда, или пока я не остановлю программу.Затянет ли мой поток Java на минуту?
while(true) {
this.doSomethingPeriodically();
Calendar now = Calendar.getInstance();
int minutes = now.get(Calendar.MINUTE);
int resume = minutes + 1;
while (now.get(Calendar.MINUTE) < resume) {
// waiting for a minute
}
}
Итак, если бы у меня был новый экземпляр календаря, это сработало бы? Но я должен использовать сон() в любом случае, да? –
Да, для обоих ;-) Если вы назначили новый экземпляр календаря теперь внутри цикла, он будет работать (если вы не входите в цикл в минуту 59 часа ;-)), но вы должны использовать sleep() во всяком случае. –
Понял. Я бы изобретал колесо и делал его квадратным, а не круглым, так сказать. Благодаря! –