由于某种原因,即使上下文正常关闭(netstat 不显示任何活动连接),仍有四个线程(如 MQTT Call、Rec、Snd、Disc)仍在运行。发布工作正常。 Camel 版本为 2.24.1。
这是我的代码: ...
camelContext.addRoutes(new RouteBuilder() {
@Override
public void configure() throws Exception {
from("timer://foo?fixedRate=true&period=2000")
.log("fired")
.setBody(simple("{\"msg\":\"Test message ${date:now:yyyy-MM-dd'T'HH:mm:ssZ}\"}"))
.to("paho:topicxyz" +
"?brokerUrl=ssl://zzz.ibmcloud.com:8883" +
"&clientId=clientxyz" +
"&userName=use-token-auth" +
"&password=RAW(pwd)"
);
}
});
camelContext.start();
Thread.sleep(10000);
camelContext.stop();
日志: ... 16:41:01,403 INFO [route1] 被发射 16:41:03,412 信息 [route1] 被解雇 16:41:03,673 信息 [DefaultCamelContext] Apache Camel 2.24.1(CamelContext:camel-1)正在关闭 16:41:03,698 INFO [DefaultShutdownStrategy] 开始正常关闭 1 条路由(超时 300 秒) 16:41:03,822 INFO [DefaultShutdownStrategy] 路线:route1 关闭完成,正在消耗:timer://foo?fixedRate=true&period=2000 16:41:03,823 INFO [DefaultShutdownStrategy] 0 秒内完成 1 条路由的正常关闭 16:41:04,277 信息 [DefaultCamelContext] Apache Camel 2.24.1(CamelContext:camel-1)正常运行时间 30.831 秒 16:41:04,281 信息 [DefaultCamelContext] Apache Camel 2.24.1(CamelContext:camel-1)在 0.607 秒内关闭