我正在使用 JBOSS EAP 6.4 。我使用 EJB @Shedule 注释在 ScedulerBean 中安排了一些调度程序,如下所示。这里的ShedulerBean依赖于StartupBean。
@Singleton
@DependsOn("StartupBean")
public class SchedulerBean {
private Logger logger = LoggerFactory.getLogger(SchedulerBean.class);
private SchedulerInterface schedulerInterface;
@PostConstruct
public void initialize() {
// some initialization
}
@Schedule(second = "1/1", minute = "*", hour = "*",persistent = false)
public void runSchedulers() {
logger.info("EJB scheduler pulse start at : " + new Date());
try {
schedulerInterface.pulseEverySecond();
logger.info("EJB scheduler pulse end at : " + new Date());
} catch (Exception e) {
logger.error("Error in EJB scheduling : ", e);
}
}
}
但是,我在 JBOSS 部署期间反复收到以下警告。谁能告诉我一种方法来解决这个问题?
计时器 [ShedularBean] 的先前执行仍在进行中,
跳过此重叠的计划执行:[Timestamp] 作为计时器
状态为 IN_TIMEOUT
由于您每秒都运行该任务,这意味着在计划当前任务时,上一个计划任务(当前的 Second-1 )仍在进行中。
因此 jboss 通知您它将跳过此执行。
请参阅此了解更多详细信息:https://issues.jboss.org/browse/AS7-3119 https://issues.jboss.org/browse/AS7-3119
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)