异步会话方法是否/可以比 servlet 调用存活更长



我不知道这是否是一个好问题。EJB 3.1 带来了用异步标记方法的可能性。我想知道异步调用的寿命是否比 servlet 线程长,或者 servlet 线程是否在后台等待直到进程完成。

不,线程不会在后台等待。您可以通过调用持久任务来轻松测试这一点,并在会话超时后监视它是否仍处于活动状态(只需调整非常短的超时)。

连接问题是在客户端从不调用 Future.get() 的情况下不必要的保留资源。为了避免它们被保留在整个应用程序运行时,规范允许超时:

允许 EJB 容器提供程序定义一个超时值,该值是 控制容器维护结果的最长时间 已完成异步调用的值。的配置 这样的超时超出了本规范的范围。

最新更新