diff --git a/src/main/java/net/minestom/server/thread/ThreadDispatcher.java b/src/main/java/net/minestom/server/thread/ThreadDispatcher.java index f99af8190..03d3fd64c 100644 --- a/src/main/java/net/minestom/server/thread/ThreadDispatcher.java +++ b/src/main/java/net/minestom/server/thread/ThreadDispatcher.java @@ -156,7 +156,9 @@ public final class ThreadDispatcher { while (true) { final Chunk chunk = chunkUpdateQueue.pollFirst(); if (chunk == null) break; - updateChunk(chunk); + // Update chunk's thread + ChunkEntry chunkEntry = chunkEntryMap.get(chunk); + if (chunkEntry != null) chunkEntry.thread = retrieveThread(chunk); this.chunkUpdateQueue.addLast(chunk); if (++counter > size || System.currentTimeMillis() >= endTime) break; @@ -201,14 +203,6 @@ public final class ThreadDispatcher { return threads.get(threadId); } - private void updateChunk(@NotNull Chunk chunk) { - ChunkEntry chunkEntry = chunkEntryMap.get(chunk); - if (chunkEntry == null) return; - Collection chunks = threadChunkMap.get(chunkEntry.thread); - if (chunks == null || chunks.isEmpty()) return; - chunkEntry.thread = retrieveThread(chunk); - } - private void processLoadedChunks() { Chunk chunk; while ((chunk = chunkLoadRequests.poll()) != null) {