持久性与非持久性计时器EJB 3.x.

时间:2016-04-26 17:07:58

标签: java java-ee timer weblogic ejb-3.1

我想知道持久定时器和非持久定时器之间的区别。 我用

做了一个简单的样本
@Schedule(hour = "*", minute = "5", second = "*/5", info = "Persistent timer")

第二次

@Schedule(hour = "*", minute = "5", second = "*/5", info = "Nonpersistent timer",persistent = false)

该应用程序部署在Weblogic上,并且它对两个计时器都具有相同的行为。

理论上差异是

  

默认情况下,计时器是持久的。如果服务器关闭或   崩溃,持久计时器被保存,并将在以后再次激活   服务器重新启动。如果持久计时器到期,则   服务器关闭后,容器将调用@Timeout方法   服务器重新启动。

     

通过调用创建非持久编程计时器   TimerConfig.setPersistent(false)并将TimerConfig对象传递给   其中一个计时器创建方法。

所以说在第一种情况下我停止了服务器(模拟了崩溃但是没有触发计时器,只是在执行新的超时时才启动。

有什么想法吗?感谢

0 个答案:

没有答案
相关问题