java - JBOSS - Previos 定时器的执行仍在进行中,定时器状态为 IN_TIMEOUT

标签 java spring ejb-3.1 jboss6.x java-ee-7

我正在使用 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 部署期间反复收到以下警告。谁能告诉我解决此问题的方法?

A previous execution of timer [ShedularBean] is still in progress, skipping this overlapping scheduled execution at: [Timestamp] as timer state is IN_TIMEOUT

最佳答案

由于您每秒都在运行该任务,这意味着在安排当前任务时(当前 second-1 的)前一个计划任务仍在进行中。

因此 jboss 通知您它将跳过此执行。

更多详情请引用: https://issues.jboss.org/browse/AS7-3119

关于java - JBOSS - Previos 定时器的执行仍在进行中,定时器状态为 IN_TIMEOUT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31402471/

相关文章:

java - 如何在EJB 3.1中缓存EJB远程接口(interface)?

java - 如何从 DTD 生成示例 XML?

java - 使 IntelliJ 生成测试而不抛出异常

java - Spring 与 Struts 1 集成 - 将依赖项注入(inject)到 ActionForm

java - Spring 批处理 : reading a csv file and modify this list before putting the results in another file

java - 每当在 spring-security-oauth 中插入新的访问 token 时如何执行一些代码?

java - 您是否应该将实体 Bean 用于域模型

java - EJB 3.1 + 设计模式

java - 如何修复构建 Android 时的错误 : Use of undeclared identifier ‘V4L2_COM_CMD_FLUSH’

java - 无法理解 session 对象的行为