java - 如何在Java EE上下文中合理延迟处理?

标签 java sleep java-ee-5

在 Java EE 5 环境中,在继续处理我自己的数据之前,我无法确保其他部分写入的某些数据存在。

历史上(J2EE 时代),这是通过在等待(例如)之后将要处理的数据对象放入内部 JMS 队列来完成的。通过 Thread.sleep 500 毫秒。

但这感觉不是处理该问题的最佳方法,所以我有两个问题:

  1. 在 Java EE 上下文中使用 sleep 方法有什么问题吗?
  2. 延迟 Java EE 5 应用程序中某些处理的合理解决方案是什么?
<小时/>

编辑:

我应该提到,我的处理是在通过 MDB 处理 JMS 队列中的对象时进行的。

可能的情况是,我正在等待的数据永远不会出现,因此必须有某种超时,之后我可以对我的数据进行一些特殊处理。

最佳答案

您可以使用EJB TimerService 功能。应避免在托管环境中使用线程。

关于java - 如何在Java EE上下文中合理延迟处理?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19115617/

相关文章:

java - 使用 Jackson 对不同请求的单个实体的不同属性进行 JSON 序列化

php - 使用 cURL 登录,然后使用 cURL 发出另一个请求

Java 多线程 : sleep and currentThread methods

python - 我如何在理论上对秒表进行编程?

java - 如何在 JSF 中截断字符串?

java - 如何使用 Jersey 和 Java EE 5 检索 ServletRequest

java - iTextPDF:动态更改表格对齐方式

java - if 条件为空检查

java - 如何推迟Spring应用程序在Eureka中的注册,直到应用程序完全初始化?

java - 在单行中排序偶数和奇数