[英]Programmatic Timer @Timeout executes several times
我有一个非持久性程序计时器。 当执行时间超过600秒时, @Timeout
方法将启动两次。 但是,如果执行小于600秒,它只会执行一次。(这就是我所需要的)。
有人知道发生了什么吗?
如何解决此问题,以使计时器仅执行一次?
问候
我已经找到一种解决方法。 将注释@timeout放入注释@TransactionAttribute和@TransactionTimeout中:
@Timeout
@TransactionAttribute (TransactionAttributeType.REQUIRES_NEW)
@TransactionTimeout (value = 1, unit = TimeUnit.HOURS)
将这些依赖项放入pom中
<dependency>
<groupId> org.jboss.ejb3 </ groupId>
<artifactId> jboss-ejb3-ext-api </ artifactId>
<version> 2.2.0.Final </ version>
</ dependency>
我为您解答了以下问题: wildfly 10 final:为计时器调用超时错误 (适用于@schedule,但适用于同一件事)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.