gpt4 book ai didi

java - 在 Java EE 5 (JBoss) 平台上启动计划任务的正确方法是什么?

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:22:21 26 4
gpt4 key购买 nike

我需要运行一个简单的计划任务,每 200 毫秒启动一次并做一些简单的事情。

Executors.newSingleThreadScheduledExecutor() 是在 JBoss 上获取预定执行程序服务的正确方法吗?

据说不建议在 Java EE 平台上生成非托管线程。看起来这个线程将是一个非托管线程。

另一方面,我不想为这么简单的事情声明 MBean 等。

编辑

org.jboss.resource.work.JBossWorkManager 但我找不到计划工作的例子。

最佳答案

调用 Executors.newSingleThreadScheduledExecutor() 并不可怕,但最好避免在 EE 容器中使用。在 Java EE 5 中 use TimeoutService :

@Stateless
public class TimerSessionBean implements TimerSession {
@Resource
TimerService timerService;

public void startTimer() {
Timer timer = timerService.createTimer(200, "Created new timer");
}

@Timeout
public void timeout(Timer timer) {
logger.info("Timeout occurred");
}
}

在 Java EE 6 中,您可以方便地使用 @Schedule annotation .

关于java - 在 Java EE 5 (JBoss) 平台上启动计划任务的正确方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12106951/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com