diff --git a/src/main/java/com/beanit/openiec61850/internal/NamedDefaultThreadFactory.java b/src/main/java/com/beanit/openiec61850/internal/NamedDefaultThreadFactory.java index 157f12a..2fcb320 100644 --- a/src/main/java/com/beanit/openiec61850/internal/NamedDefaultThreadFactory.java +++ b/src/main/java/com/beanit/openiec61850/internal/NamedDefaultThreadFactory.java @@ -19,25 +19,25 @@ import java.util.concurrent.atomic.AtomicInteger; public class NamedDefaultThreadFactory implements ThreadFactory { - private static final AtomicInteger factoryCounter = new AtomicInteger(1); private final AtomicInteger threadCounter = new AtomicInteger(1); private final String namePrefix; private ThreadFactory backingDefaultThreadFactory = Executors.defaultThreadFactory(); - public NamedDefaultThreadFactory(String namePrefix) { - this.namePrefix = namePrefix; + /** + * Creates a thread factory with the given pool name as a name prefix. Threads created will have + * the name {@code -thread-}. A common pool name is of format {@code + * -}. + * + * @param poolName the thread pool name + */ + public NamedDefaultThreadFactory(String poolName) { + this.namePrefix = poolName + "-thread-"; } @Override public Thread newThread(Runnable r) { Thread thread = backingDefaultThreadFactory.newThread(r); - String threadName = - namePrefix - + "-" - + factoryCounter.getAndIncrement() - + "-thread-" - + threadCounter.getAndIncrement(); - thread.setName(threadName); + thread.setName(namePrefix + threadCounter.getAndIncrement()); return thread; } }