From 59d139ace2866bbb646baa49dba6ff0df1430fae Mon Sep 17 00:00:00 2001 From: Redkale <8730487+redkale@users.noreply.github.com> Date: Thu, 4 Jun 2020 09:44:00 +0800 Subject: [PATCH] --- src/org/redkale/boot/Application.java | 7 +++++++ src/org/redkale/mq/MessageAgent.java | 2 ++ 2 files changed, 9 insertions(+) diff --git a/src/org/redkale/boot/Application.java b/src/org/redkale/boot/Application.java index 523064609..4d187e6e9 100644 --- a/src/org/redkale/boot/Application.java +++ b/src/org/redkale/boot/Application.java @@ -1016,6 +1016,13 @@ public final class Application { if (clusterAgent != null) { clusterAgent.destroy(clusterAgent.getConfig()); } + if (this.messageAgents != null) { + long s = System.currentTimeMillis(); + for (MessageAgent agent : this.messageAgents) { + agent.destroy(agent.getConfig()); + } + logger.info(this.getClass().getSimpleName() + " MessageAgent destroy in " + (System.currentTimeMillis() - s) + " ms\r\n"); + } for (DataSource source : dataSources) { if (source == null) continue; try { diff --git a/src/org/redkale/mq/MessageAgent.java b/src/org/redkale/mq/MessageAgent.java index 0edd63172..76efa73b2 100644 --- a/src/org/redkale/mq/MessageAgent.java +++ b/src/org/redkale/mq/MessageAgent.java @@ -91,6 +91,8 @@ public abstract class MessageAgent { } public void destroy(AnyValue config) { + if (this.sncpRespConsumer != null) this.sncpRespConsumer.shutdown().join(); + if (this.producer != null) this.producer.shutdown().join(); } public String getName() {