From 542cfe7db944dc8a0c3463088fdf613b920ddd0c Mon Sep 17 00:00:00 2001 From: Nathan Baltzell Date: Fri, 28 Aug 2026 17:55:54 -0400 Subject: [PATCH] fix thread safety --- .../java/org/jlab/utils/benchmark/Benchmark.java | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/common-tools/clas-utils/src/main/java/org/jlab/utils/benchmark/Benchmark.java b/common-tools/clas-utils/src/main/java/org/jlab/utils/benchmark/Benchmark.java index 96ef935a8b..708cf988c5 100644 --- a/common-tools/clas-utils/src/main/java/org/jlab/utils/benchmark/Benchmark.java +++ b/common-tools/clas-utils/src/main/java/org/jlab/utils/benchmark/Benchmark.java @@ -39,36 +39,34 @@ public void reset(){ bt.reset(); } - public void addTimer(String name){ + public synchronized void addTimer(String name){ if (!timerStore.containsKey(name)) timerStore.put(name, new BenchmarkMultiTimer(name)); - else - System.err.println("[Benchmark] -----> error. timer with name ("+ name + ") already exists"); } public void pause(String name){ if (!timerStore.containsKey(name)) - timerStore.put(name, new BenchmarkMultiTimer(name)); + addTimer(name); else timerStore.get(name).pause(); } public void resume(String name){ if (!timerStore.containsKey(name)) - timerStore.put(name, new BenchmarkMultiTimer(name)); + addTimer(name); timerStore.get(name).resume(); } public void pause(int thread, String name){ if (!timerStore.containsKey(name)) - timerStore.put(name, new BenchmarkMultiTimer(name)); + addTimer(name); else timerStore.get(name).pause(thread); } public void resume(int thread, String name){ if (!timerStore.containsKey(name)) - timerStore.put(name, new BenchmarkMultiTimer(name)); + addTimer(name); timerStore.get(name).resume(thread); }