У меня есть несколько вопросов относительно безопасности и правильности следующей услуги гипотетического таймера:
@Singleton
public class MyTimerService {
@Schedule(second = "*", minute = "*", hour = "*", persistent = false)
public void checkTakingOneMinute() {
// code below takes a minute or so
}
}
Все, что я хочу сделать здесь, это проверить что-то как можно скорее (в этом случае каждую секунду). Насколько я понимаю, метод checkTakingOneMinute()
не начнет новую проверку, пока не завершит предыдущий вызов. Это то, что я хочу, но меня беспокоит внутреннее содержимое контейнера: будет ли пропуск метода просто пропущен, когда он занят, или он будет заблокирован и помещен в своего рода очередь с последующими таймаутами блокировки?