我有一个MQEvent侦听器线程,它不断轮询MQ以获取新消息并处理它们。此应用程序部署到集群Weblogic环境。应用程序运行几个月后,所有Weblogic受管服务器上的侦听器线程都会被中断(几乎同时),从而导致侦听器被终止。我必须重新部署应用程序才能再次使用它。
我无法找到任何中断线程的内容。监听器使用多个
Thread.sleep()调用,但我不确定监听器是如何被中断的。
public void run() {
while (!isInterrupted()) {
//keep processing messages and sleep
}
}
Weblogic是否会中断长时间运行的线程并尝试关闭它们?