Skip to content
Snippets Groups Projects
Commit 86026a6d authored by Petr Bainar's avatar Petr Bainar
Browse files

miscStuffExtended: addressing PR comment #3

parent 35f59c20
No related branches found
No related tags found
1 merge request!31Misc stuff extended
......@@ -22,6 +22,7 @@ class HaasOutputObservableValueRegistry implements Closeable {
private Timer timer;
private boolean isRunning = false;
private int numberOfListeners = 0;
private boolean closed = false;
public HaasOutputObservableValueRegistry(final BenchmarkJob job) {
this.job = job;
......@@ -34,6 +35,8 @@ class HaasOutputObservableValueRegistry implements Closeable {
@Override
public void close() {
stopTimer();
numberOfListeners = 0;
closed = true;
}
public SimpleObservableValue<String> getObservableOutput(
......@@ -48,13 +51,17 @@ class HaasOutputObservableValueRegistry implements Closeable {
}
private synchronized void increaseNumberOfObservers() {
numberOfListeners++;
evaluateTimer();
if (!closed) {
numberOfListeners++;
evaluateTimer();
}
}
private synchronized void decreaseNumberOfObservers() {
numberOfListeners--;
evaluateTimer();
if (!closed) {
numberOfListeners--;
evaluateTimer();
}
}
private void evaluateTimer() {
......
......@@ -16,6 +16,7 @@ class TaskObservableValueRegistry implements Closeable {
private final SimpleObservableList<Task> observableTaskList;
private Timer timer;
private boolean isRunning = false;
private boolean closed = false;
public TaskObservableValueRegistry(final BenchmarkJob job) {
this.job = job;
......@@ -26,6 +27,7 @@ class TaskObservableValueRegistry implements Closeable {
@Override
public void close() {
stopTimer();
closed = true;
}
public synchronized SimpleObservableList<Task> getTaskList() {
......@@ -34,6 +36,10 @@ class TaskObservableValueRegistry implements Closeable {
private void evaluateTimer() {
if (closed) {
return;
}
final boolean anyListeners = observableTaskList.hasAnyListeners();
final CountDownLatch timerLatch = new CountDownLatch(1);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment