我有一个包含各种方法的无状态EJB,我想在函数中使用一个计时器,这样如果方法花费的时间超过30秒,就会发生超时并通知调用者。
我已经查看了EJB方法的@Schedule
注释,但我认为这不符合我的目的。
答案 0 :(得分:0)
如果您不需要精确度,最快捷的方法是调用标记为@Asynchronous
的方法,其签名中包含Future
,将在30秒后发送通知。
该方法必须在另一个EJB上,@Asynchronous
才能正常工作。
然后从来电者那里,如果经过的时间短于30秒,则可以取消操作。