Skip to content

Commit 803cccf

Browse files
committed
Fix some more Thread-names
1 parent c622969 commit 803cccf

File tree

7 files changed

+27
-13
lines changed

7 files changed

+27
-13
lines changed

common/src/main/java/de/bluecolored/bluemap/common/plugin/MapUpdateService.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,9 +39,12 @@
3939
import java.util.Map;
4040
import java.util.Timer;
4141
import java.util.TimerTask;
42+
import java.util.concurrent.atomic.AtomicInteger;
4243

4344
public class MapUpdateService extends Thread {
4445

46+
private static final AtomicInteger NEXT_ID = new AtomicInteger(0);
47+
4548
private final BmMap map;
4649
private final RenderManager renderManager;
4750
private final Duration regionUpdateCooldown;
@@ -55,6 +58,7 @@ public class MapUpdateService extends Thread {
5558
private final Cache<Vector2i, Long> lastUpdateTimes;
5659

5760
public MapUpdateService(RenderManager renderManager, BmMap map, Duration regionUpdateCooldown) throws IOException {
61+
super("BlueMap-MapUpdateService-" + NEXT_ID.getAndIncrement());
5862
this.renderManager = renderManager;
5963
this.map = map;
6064
this.regionUpdateCooldown = regionUpdateCooldown;

common/src/main/java/de/bluecolored/bluemap/common/plugin/Plugin.java

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -232,11 +232,14 @@ private void load(@Nullable ResourcePack preloadedResourcePack) throws IOExcepti
232232
webLogger = Logger.combine(webLoggerList);
233233

234234
try {
235-
webServer = new HttpServer(new LoggingRequestHandler(
236-
webRequestHandler,
237-
webserverConfig.getLog().getFormat(),
238-
webLogger
239-
));
235+
webServer = new HttpServer(
236+
"BlueMap-Webserver",
237+
new LoggingRequestHandler(
238+
webRequestHandler,
239+
webserverConfig.getLog().getFormat(),
240+
webLogger
241+
)
242+
);
240243
webServer.bind(new InetSocketAddress(
241244
webserverConfig.resolveIp(),
242245
webserverConfig.getPort()

common/src/main/java/de/bluecolored/bluemap/common/web/http/HttpServer.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,8 @@ public class HttpServer extends Server {
3434
@Getter @Setter
3535
private HttpRequestHandler requestHandler;
3636

37-
public HttpServer(HttpRequestHandler requestHandler) throws IOException {
37+
public HttpServer(String name, HttpRequestHandler requestHandler) throws IOException {
38+
super(name);
3839
this.requestHandler = requestHandler;
3940
}
4041

common/src/main/java/de/bluecolored/bluemap/common/web/http/Server.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,8 @@ public abstract class Server extends Thread implements Closeable, Runnable {
4040
private final Selector selector;
4141
private final Collection<ServerSocketChannel> server;
4242

43-
public Server() throws IOException {
43+
public Server(String name) throws IOException {
44+
super(name);
4445
this.selector = Selector.open();
4546
this.server = new ArrayList<>();
4647
}

core/src/main/java/de/bluecolored/bluemap/core/BlueMap.java

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -29,10 +29,7 @@
2929
import org.spongepowered.configurate.gson.GsonConfigurationLoader;
3030

3131
import java.io.IOException;
32-
import java.util.concurrent.Executors;
33-
import java.util.concurrent.ForkJoinPool;
34-
import java.util.concurrent.ForkJoinWorkerThread;
35-
import java.util.concurrent.ScheduledExecutorService;
32+
import java.util.concurrent.*;
3633

3734
public class BlueMap {
3835

@@ -71,4 +68,12 @@ public class BlueMap {
7168
false
7269
);
7370

71+
private static final Thread.Builder.OfPlatform schedulerThreadBuilder = Thread.ofPlatform().name("BlueMap-Scheduler-", 0);
72+
public static final ScheduledExecutorService SCHEDULER = Executors.newScheduledThreadPool(1, runnable -> {
73+
Thread thread = schedulerThreadBuilder.unstarted(runnable);
74+
// use current classloader, this fixes ClassLoading issues with forge
75+
thread.setContextClassLoader(BlueMap.class.getClassLoader());
76+
return thread;
77+
});
78+
7479
}

core/src/main/java/de/bluecolored/bluemap/core/util/Caches.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ public class Caches {
3434
public static Caffeine<Object, Object> with() {
3535
return Caffeine.newBuilder()
3636
.executor(BlueMap.THREAD_POOL)
37-
.scheduler(Scheduler.systemScheduler())
37+
.scheduler(Scheduler.forScheduledExecutorService(BlueMap.SCHEDULER))
3838
.recordStats();
3939
}
4040

implementations/cli/src/main/java/de/bluecolored/bluemap/cli/BlueMapCLI.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -291,7 +291,7 @@ public void startWebserver(BlueMapService blueMap, boolean verbose) throws IOExc
291291

292292
try {
293293
//noinspection resource
294-
HttpServer webServer = new HttpServer(handler);
294+
HttpServer webServer = new HttpServer("BlueMap-Webserver", handler);
295295
webServer.bind(new InetSocketAddress(
296296
config.resolveIp(),
297297
config.getPort()

0 commit comments

Comments
 (0)