From 3d9505fb8cb4b471ea36d0fd5a1c71b5149b68ee Mon Sep 17 00:00:00 2001 From: Christian Wulf <chw@informatik.uni-kiel.de> Date: Thu, 30 Jul 2015 14:01:41 +0200 Subject: [PATCH] fixed double initialization --- src/main/java/teetime/framework/RunnableConsumerStage.java | 5 +---- src/main/java/teetime/framework/TerminationStrategy.java | 2 ++ src/main/java/teetime/framework/ThreadService.java | 7 +------ 3 files changed, 4 insertions(+), 10 deletions(-) diff --git a/src/main/java/teetime/framework/RunnableConsumerStage.java b/src/main/java/teetime/framework/RunnableConsumerStage.java index 7af5b4d6..a23ae092 100644 --- a/src/main/java/teetime/framework/RunnableConsumerStage.java +++ b/src/main/java/teetime/framework/RunnableConsumerStage.java @@ -30,18 +30,15 @@ final class RunnableConsumerStage extends AbstractRunnableStage { super(stage); } - @SuppressWarnings("PMD.GuardLogStatement") @Override protected void beforeStageExecution() throws InterruptedException { - logger.trace("Waiting for init signals... " + stage); for (InputPort<?> inputPort : stage.getInputPorts()) { inputPort.waitForInitializingSignal(); } - logger.trace("Waiting for start signals... " + stage); + for (InputPort<?> inputPort : stage.getInputPorts()) { inputPort.waitForStartSignal(); } - logger.trace("Starting... " + stage); } @Override diff --git a/src/main/java/teetime/framework/TerminationStrategy.java b/src/main/java/teetime/framework/TerminationStrategy.java index 9d56708c..74a6e337 100644 --- a/src/main/java/teetime/framework/TerminationStrategy.java +++ b/src/main/java/teetime/framework/TerminationStrategy.java @@ -16,5 +16,7 @@ package teetime.framework; public enum TerminationStrategy { + BY_SIGNAL, BY_SELF_DECISION, BY_INTERRUPT + } diff --git a/src/main/java/teetime/framework/ThreadService.java b/src/main/java/teetime/framework/ThreadService.java index 985cdf0a..aca4c7b3 100644 --- a/src/main/java/teetime/framework/ThreadService.java +++ b/src/main/java/teetime/framework/ThreadService.java @@ -13,7 +13,6 @@ import org.slf4j.LoggerFactory; import teetime.framework.exceptionHandling.AbstractExceptionListener; import teetime.framework.exceptionHandling.IExceptionListenerFactory; -import teetime.framework.signal.InitializingSignal; import teetime.util.ThreadThrowableContainer; import teetime.util.framework.concurrent.SignalingCounter; @@ -150,16 +149,12 @@ class ThreadService extends AbstractService<ThreadService> { producerRunnables.add(runnable); thread = createThread(runnable, stage.getId()); this.finiteProducerThreads.add(thread); - InitializingSignal initializingSignal = new InitializingSignal(); - stage.onSignal(initializingSignal, null); break; } case BY_INTERRUPT: { final RunnableProducerStage runnable = new RunnableProducerStage(stage); producerRunnables.add(runnable); thread = createThread(runnable, stage.getId()); - InitializingSignal initializingSignal = new InitializingSignal(); - stage.onSignal(initializingSignal, null); this.infiniteProducerThreads.add(thread); break; } @@ -182,7 +177,7 @@ class ThreadService extends AbstractService<ThreadService> { } void addThreadableStage(final Stage stage, final String threadName) { - if (this.threadableStages.put(stage, threadName) != null) { + if (this.threadableStages.put(stage, threadName) != null && LOGGER.isWarnEnabled()) { LOGGER.warn("Stage " + stage.getId() + " was already marked as threadable stage."); } } -- GitLab