introducing utility class

This commit is contained in:
rusefi 2019-04-23 19:03:33 -04:00
parent 95cd53b234
commit 1edf3af6ca
2 changed files with 25 additions and 9 deletions

View File

@ -0,0 +1,23 @@
package com.rusefi;
import org.jetbrains.annotations.NotNull;
import java.util.concurrent.Executors;
import java.util.concurrent.ThreadFactory;
import java.util.concurrent.atomic.AtomicInteger;
public class NamedThreadFactory implements ThreadFactory {
private final AtomicInteger counter = new AtomicInteger();
private String name;
public NamedThreadFactory(String name) {
this.name = name;
}
@Override
public Thread newThread(@NotNull Runnable r) {
Thread t = Executors.defaultThreadFactory().newThread(r);
t.setName(name + counter.incrementAndGet());
return t;
}
}

View File

@ -1,6 +1,7 @@
package com.rusefi.io;
import com.rusefi.FileLog;
import com.rusefi.NamedThreadFactory;
import com.rusefi.core.EngineState;
import com.rusefi.io.serial.SerialConnector;
import com.rusefi.io.tcp.TcpConnector;
@ -82,15 +83,7 @@ public class LinkManager {
public static final ExecutorService COMMUNICATION_EXECUTOR = new ThreadPoolExecutor(1, 1,
0L, TimeUnit.MILLISECONDS,
COMMUNICATION_QUEUE,
new ThreadFactory() {
@Override
public Thread newThread(Runnable r) {
Thread t = Executors.defaultThreadFactory().newThread(r);
t.setName("communication executor");
;
return t;
}
});
new NamedThreadFactory("communication executor"));
private static Thread COMMUNICATION_THREAD;
static {