@Schedule анотация и таймаут в EJB bean

Какво се случва, ако имам @Scheduled задача, която се изпълнява на всеки 5 секунди и понякога отнема повече от 5 секунди за изпълнение на тази задача? Контейнерът EJB знае как да се справи в такъв сценарий или трябва да се грижа за него сам? Благодаря ти.

P.S. Моят EJB bean, анотиран от @Startup и @Singleton, и го стартирам на Websphere 8.0


person Anatoly    schedule 27.07.2014    source източник


Отговори (1)


Мисля, че си добър, защото зърното ти е анотирано с @Singleton. EJB компонентите се синхронизират, освен ако изрично не маркирате методите с @Asynchronous. Така че, ако изпълнението на cron (нишка) е в ход, тогава друго изпълнение на cron (друга нишка) ще трябва да изчака първото да завърши.

person bitkot    schedule 27.07.2014
comment
Вашата връзка ме отвежда до документацията на Spring, но аз използвам EJB beans, а не Spring, прилага ли се и за EJB beans? Не намерих споменаване на „поправено“ в ръководствата на Oracle. - person Anatoly; 27.07.2014
comment
Съжалявам, актуализирах отговора. Мисля, че трябва да добавите EJB някъде в заглавието, за да стане по-специфично и лесно да се появи в резултата от търсенето за @Scheduled, свързан с ejb. - person bitkot; 27.07.2014
comment
Прав си, моите извинения. Добавих го към заглавието. - person Anatoly; 27.07.2014