校验当前线程是否中断否则停止刷新
refreshThead = new Thread(() -> {
logger.info("RMQ对应接口消费者状态刷新...");
while (!Thread.currentThread().isInterrupted()) {
try {
try {
Thread.sleep(1000 * QContext.RMQ_CONSUMER_REFRESH_INTERVAL);
} catch (InterruptedException ex) {
}
if (logger.isDebugEnabled()) {
logger.debug("执行RMQ对应接口消费者状态刷新......");
}
EsbCacheManager cacheManager = BeanFactoryHelper.getBean("esbCacheManager", EsbCacheManager.class);
QContext.rmqConsumerActionIds.forEach((k, v) -> cacheManager.recordActionIdForConsumerOk(v, QContext.RMQ_CONSUMER_TTL));
} catch (Exception e) {
logger.error("RMQ对应接口消费者状态刷新出错", e);
try {
Thread.sleep(10000);
} catch (InterruptedException ex) {
}
}
}
});
校验线程是否中断Thread.currentThread()返回当前线程对象,isInterrupted()校验当前对象是否中断,不中断循环while内容不断得刷新
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。