From 5802d9946f89715b86ca06858ee76d72dc3d275a Mon Sep 17 00:00:00 2001 From: Kai Moritz Date: Fri, 25 Mar 2022 14:06:53 +0100 Subject: [PATCH] =?utf8?q?Synchronisation=20bei=20Start/Stop=20repariert?= =?utf8?q?=20und=20Ausgabe=20f=C3=BCr=20Fehler=20erg=C3=A4nzt?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- .../java/de/juplo/kafka/EndlessProducer.java | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/src/main/java/de/juplo/kafka/EndlessProducer.java b/src/main/java/de/juplo/kafka/EndlessProducer.java index cc3150e..33a3815 100644 --- a/src/main/java/de/juplo/kafka/EndlessProducer.java +++ b/src/main/java/de/juplo/kafka/EndlessProducer.java @@ -9,7 +9,6 @@ import javax.annotation.PreDestroy; import java.util.Properties; import java.util.concurrent.ExecutionException; import java.util.concurrent.ExecutorService; -import java.util.concurrent.Future; @Slf4j @@ -24,7 +23,6 @@ public class EndlessProducer implements Runnable private boolean running = false; private long i = 0; private long produced = 0; - private Future future = null; public EndlessProducer( ExecutorService executor, @@ -75,7 +73,15 @@ public class EndlessProducer implements Runnable } catch (Exception e) { - + log.error("{} - Unexpected Exception:", id, e); + } + finally + { + synchronized (this) + { + running = false; + log.info("{} - Stopped - produced {} messages so far", id, produced); + } } } @@ -138,7 +144,7 @@ public class EndlessProducer implements Runnable log.info("{} - Starting - produced {} messages before", id, produced); running = true; - future = executor.submit(this); + executor.submit(this); } public synchronized void stop() throws ExecutionException, InterruptedException @@ -148,8 +154,6 @@ public class EndlessProducer implements Runnable log.info("{} - Stopping...", id); running = false; - future.get(); - log.info("{} - Stopped - produced {} messages so far", id, produced); } @PreDestroy -- 2.20.1