From fd5682105146496dad3d03f19d10171b7b8d3fda Mon Sep 17 00:00:00 2001 From: Alexdoru <57050655+Alexdoru@users.noreply.github.com> Date: Fri, 4 Oct 2024 16:36:15 +0200 Subject: [PATCH] give names to NEI threads --- src/main/java/codechicken/nei/ItemList.java | 23 +++++++++++++++------ 1 file changed, 17 insertions(+), 6 deletions(-) diff --git a/src/main/java/codechicken/nei/ItemList.java b/src/main/java/codechicken/nei/ItemList.java index ab9f63ed2..1753c0624 100644 --- a/src/main/java/codechicken/nei/ItemList.java +++ b/src/main/java/codechicken/nei/ItemList.java @@ -8,6 +8,7 @@ import java.util.List; import java.util.concurrent.ExecutionException; import java.util.concurrent.ForkJoinPool; +import java.util.concurrent.ForkJoinWorkerThread; import java.util.regex.Pattern; import java.util.stream.Collectors; @@ -322,14 +323,24 @@ public void execute() { } }; - public static ForkJoinPool getPool(int poolSize) { - if (poolSize < 1) poolSize = 1; + public static ForkJoinPool forkJoinPool; - return new ForkJoinPool(poolSize); - } + static { + final ForkJoinPool.ForkJoinWorkerThreadFactory factory = new ForkJoinPool.ForkJoinWorkerThreadFactory() { + + private int workerId; - public static final int numProcessors = Runtime.getRuntime().availableProcessors(); - public static ForkJoinPool forkJoinPool = getPool(numProcessors * 2 / 3); + @Override + public ForkJoinWorkerThread newThread(ForkJoinPool pool) { + final ForkJoinWorkerThread worker = ForkJoinPool.defaultForkJoinWorkerThreadFactory.newThread(pool); + worker.setName("NEI-worker-thread-" + workerId++); + return worker; + } + }; + int poolSize = Runtime.getRuntime().availableProcessors() * 2 / 3; + if (poolSize < 1) poolSize = 1; + forkJoinPool = new ForkJoinPool(poolSize, factory, null, false); + } public static final RestartableTask updateFilter = new RestartableTask("NEI Item Filtering") {