From 89012711ce54eea61dd28269df360a5d2cbae656 Mon Sep 17 00:00:00 2001 From: James Seibel Date: Sat, 2 Mar 2024 14:02:54 -0600 Subject: [PATCH] rename ThreadPools -> ThreadPoolUtil --- .../distanthorizons/core/api/internal/SharedApi.java | 8 ++++---- .../render/bufferBuilding/ColumnRenderBufferBuilder.java | 6 +++--- .../core/dataObjects/transformers/ChunkToLodBuilder.java | 6 +++--- .../core/file/AbstractLegacyDataSourceHandler.java | 6 +++--- .../core/file/AbstractNewDataSourceHandler.java | 9 +++------ .../core/file/fullDatafile/NewFullDataFileHandler.java | 4 ++-- .../core/file/renderfile/RenderSourceFileHandler.java | 4 ++-- .../core/generation/WorldGenerationQueue.java | 8 ++++---- .../com/seibel/distanthorizons/core/util/ThreadUtil.java | 4 ++-- .../threading/{ThreadPools.java => ThreadPoolUtil.java} | 8 ++++---- 10 files changed, 30 insertions(+), 33 deletions(-) rename core/src/main/java/com/seibel/distanthorizons/core/util/threading/{ThreadPools.java => ThreadPoolUtil.java} (96%) diff --git a/core/src/main/java/com/seibel/distanthorizons/core/api/internal/SharedApi.java b/core/src/main/java/com/seibel/distanthorizons/core/api/internal/SharedApi.java index b0499375d..f72484df5 100644 --- a/core/src/main/java/com/seibel/distanthorizons/core/api/internal/SharedApi.java +++ b/core/src/main/java/com/seibel/distanthorizons/core/api/internal/SharedApi.java @@ -32,7 +32,7 @@ import com.seibel.distanthorizons.core.render.renderer.DebugRenderer; import com.seibel.distanthorizons.core.util.LodUtil; import com.seibel.distanthorizons.core.util.TimerUtil; import com.seibel.distanthorizons.core.util.objects.Pair; -import com.seibel.distanthorizons.core.util.threading.ThreadPools; +import com.seibel.distanthorizons.core.util.threading.ThreadPoolUtil; import com.seibel.distanthorizons.core.world.*; import com.seibel.distanthorizons.core.wrapperInterfaces.chunk.IChunkWrapper; import com.seibel.distanthorizons.core.wrapperInterfaces.minecraft.IMinecraftRenderWrapper; @@ -102,11 +102,11 @@ public class SharedApi // access the MC level at inappropriate times, which can cause exceptions if (currentWorld != null) { - ThreadPools.setupThreadPools(); + ThreadPoolUtil.setupThreadPools(); } else { - ThreadPools.shutdownThreadPools(); + ThreadPoolUtil.shutdownThreadPools(); DebugRenderer.clearRenderables(); MC_RENDER.clearTargetFrameBuffer(); @@ -285,7 +285,7 @@ public class SharedApi private static void bakeChunkLightingAndSendToLevelAsync(IChunkWrapper chunkWrapper, @Nullable ArrayList neighbourChunkList, IDhLevel dhLevel) { // lighting the chunk needs to be done on a separate thread to prevent lagging any of the event threads - ThreadPoolExecutor executor = ThreadPools.getLightPopulatorExecutor(); + ThreadPoolExecutor executor = ThreadPoolUtil.getLightPopulatorExecutor(); if (executor == null) { return; diff --git a/core/src/main/java/com/seibel/distanthorizons/core/dataObjects/render/bufferBuilding/ColumnRenderBufferBuilder.java b/core/src/main/java/com/seibel/distanthorizons/core/dataObjects/render/bufferBuilding/ColumnRenderBufferBuilder.java index 6b75be291..f133f424e 100644 --- a/core/src/main/java/com/seibel/distanthorizons/core/dataObjects/render/bufferBuilding/ColumnRenderBufferBuilder.java +++ b/core/src/main/java/com/seibel/distanthorizons/core/dataObjects/render/bufferBuilding/ColumnRenderBufferBuilder.java @@ -34,7 +34,7 @@ import com.seibel.distanthorizons.core.util.RenderDataPointUtil; import com.seibel.distanthorizons.core.util.objects.Reference; import com.seibel.distanthorizons.core.util.objects.UncheckedInterruptedException; import com.seibel.distanthorizons.core.dataObjects.render.columnViews.ColumnArrayView; -import com.seibel.distanthorizons.core.util.threading.ThreadPools; +import com.seibel.distanthorizons.core.util.threading.ThreadPoolUtil; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; @@ -67,8 +67,8 @@ public class ColumnRenderBufferBuilder IDhClientLevel clientLevel, Reference renderBufferRef, ColumnRenderSource renderSource, ColumnRenderSource[] adjData) { - ThreadPoolExecutor bufferBuilderExecutor = ThreadPools.getBufferBuilderExecutor(); - ThreadPoolExecutor bufferUploaderExecutor = ThreadPools.getBufferUploaderExecutor(); + ThreadPoolExecutor bufferBuilderExecutor = ThreadPoolUtil.getBufferBuilderExecutor(); + ThreadPoolExecutor bufferUploaderExecutor = ThreadPoolUtil.getBufferUploaderExecutor(); if ((bufferBuilderExecutor == null || bufferBuilderExecutor.isTerminated()) || (bufferUploaderExecutor == null || bufferUploaderExecutor.isTerminated())) { diff --git a/core/src/main/java/com/seibel/distanthorizons/core/dataObjects/transformers/ChunkToLodBuilder.java b/core/src/main/java/com/seibel/distanthorizons/core/dataObjects/transformers/ChunkToLodBuilder.java index 8d27273c7..a3a727f65 100644 --- a/core/src/main/java/com/seibel/distanthorizons/core/dataObjects/transformers/ChunkToLodBuilder.java +++ b/core/src/main/java/com/seibel/distanthorizons/core/dataObjects/transformers/ChunkToLodBuilder.java @@ -27,7 +27,7 @@ import com.seibel.distanthorizons.core.dataObjects.fullData.sources.NewFullDataS import com.seibel.distanthorizons.core.dependencyInjection.SingletonInjector; import com.seibel.distanthorizons.core.logging.ConfigBasedLogger; import com.seibel.distanthorizons.core.pos.DhChunkPos; -import com.seibel.distanthorizons.core.util.threading.ThreadPools; +import com.seibel.distanthorizons.core.util.threading.ThreadPoolUtil; import com.seibel.distanthorizons.core.wrapperInterfaces.chunk.IChunkWrapper; import com.seibel.distanthorizons.core.wrapperInterfaces.minecraft.IMinecraftClientWrapper; import org.apache.logging.log4j.LogManager; @@ -82,7 +82,7 @@ public class ChunkToLodBuilder implements AutoCloseable // TODO why on tick? public void tick() { - int threadCount = ThreadPools.getWorkerThreadCount(); + int threadCount = ThreadPoolUtil.getWorkerThreadCount(); if (this.runningCount.get() >= threadCount) { return; @@ -102,7 +102,7 @@ public class ChunkToLodBuilder implements AutoCloseable return; } - ThreadPoolExecutor lodBuilderExecutor = ThreadPools.getChunkToLodBuilderExecutor(); + ThreadPoolExecutor lodBuilderExecutor = ThreadPoolUtil.getChunkToLodBuilderExecutor(); if (lodBuilderExecutor == null) { return; diff --git a/core/src/main/java/com/seibel/distanthorizons/core/file/AbstractLegacyDataSourceHandler.java b/core/src/main/java/com/seibel/distanthorizons/core/file/AbstractLegacyDataSourceHandler.java index 5b7a4f97f..80e7ae3fe 100644 --- a/core/src/main/java/com/seibel/distanthorizons/core/file/AbstractLegacyDataSourceHandler.java +++ b/core/src/main/java/com/seibel/distanthorizons/core/file/AbstractLegacyDataSourceHandler.java @@ -11,7 +11,7 @@ import com.seibel.distanthorizons.core.sql.repo.AbstractLegacyDataSourceRepo; import com.seibel.distanthorizons.core.util.LodUtil; import com.seibel.distanthorizons.core.util.TimerUtil; import com.seibel.distanthorizons.core.util.objects.dataStreams.DhDataOutputStream; -import com.seibel.distanthorizons.core.util.threading.ThreadPools; +import com.seibel.distanthorizons.core.util.threading.ThreadPoolUtil; import org.apache.logging.log4j.Logger; import org.jetbrains.annotations.Nullable; @@ -128,7 +128,7 @@ public abstract class AbstractLegacyDataSourceHandler getAsync(DhSectionPos pos) { - ThreadPoolExecutor executor = ThreadPools.getFileHandlerExecutor(); + ThreadPoolExecutor executor = ThreadPoolUtil.getFileHandlerExecutor(); if (executor == null || executor.isTerminated()) { return CompletableFuture.completedFuture(null); @@ -190,7 +190,7 @@ public abstract class AbstractLegacyDataSourceHandler updateDataSourceAsync(NewFullDataSource inputDataSource) { - ThreadPoolExecutor executor = ThreadPools.getFileHandlerExecutor(); + ThreadPoolExecutor executor = ThreadPoolUtil.getFileHandlerExecutor(); if (executor == null || executor.isTerminated()) { return CompletableFuture.completedFuture(null); diff --git a/core/src/main/java/com/seibel/distanthorizons/core/file/AbstractNewDataSourceHandler.java b/core/src/main/java/com/seibel/distanthorizons/core/file/AbstractNewDataSourceHandler.java index 217e1958b..c91c4319d 100644 --- a/core/src/main/java/com/seibel/distanthorizons/core/file/AbstractNewDataSourceHandler.java +++ b/core/src/main/java/com/seibel/distanthorizons/core/file/AbstractNewDataSourceHandler.java @@ -9,18 +9,15 @@ import com.seibel.distanthorizons.core.sql.repo.AbstractDhRepo; import com.seibel.distanthorizons.core.sql.dto.IBaseDTO; import com.seibel.distanthorizons.core.util.LodUtil; import com.seibel.distanthorizons.core.util.TimerUtil; -import com.seibel.distanthorizons.core.util.threading.ThreadPools; +import com.seibel.distanthorizons.core.util.threading.ThreadPoolUtil; import org.apache.logging.log4j.Logger; import org.jetbrains.annotations.Nullable; import java.io.File; import java.io.IOException; import java.util.ArrayList; -import java.util.Enumeration; import java.util.Timer; -import java.util.TimerTask; import java.util.concurrent.CompletableFuture; -import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.RejectedExecutionException; import java.util.concurrent.ThreadPoolExecutor; import java.util.concurrent.locks.ReentrantLock; @@ -123,7 +120,7 @@ public abstract class AbstractNewDataSourceHandler @Override public CompletableFuture getAsync(DhSectionPos pos) { - ThreadPoolExecutor executor = ThreadPools.getFileHandlerExecutor(); + ThreadPoolExecutor executor = ThreadPoolUtil.getFileHandlerExecutor(); if (executor == null || executor.isTerminated()) { return CompletableFuture.completedFuture(null); @@ -171,7 +168,7 @@ public abstract class AbstractNewDataSourceHandler @Override public CompletableFuture updateDataSourceAsync(NewFullDataSource inputDataSource) { - ThreadPoolExecutor executor = ThreadPools.getFileHandlerExecutor(); + ThreadPoolExecutor executor = ThreadPoolUtil.getFileHandlerExecutor(); if (executor == null || executor.isTerminated()) { return CompletableFuture.completedFuture(null); diff --git a/core/src/main/java/com/seibel/distanthorizons/core/file/fullDatafile/NewFullDataFileHandler.java b/core/src/main/java/com/seibel/distanthorizons/core/file/fullDatafile/NewFullDataFileHandler.java index 6754f1d00..1fe3796d3 100644 --- a/core/src/main/java/com/seibel/distanthorizons/core/file/fullDatafile/NewFullDataFileHandler.java +++ b/core/src/main/java/com/seibel/distanthorizons/core/file/fullDatafile/NewFullDataFileHandler.java @@ -32,7 +32,7 @@ import com.seibel.distanthorizons.core.sql.dto.NewFullDataSourceDTO; import com.seibel.distanthorizons.core.sql.repo.AbstractDhRepo; import com.seibel.distanthorizons.core.sql.repo.NewFullDataSourceRepo; import com.seibel.distanthorizons.core.util.ThreadUtil; -import com.seibel.distanthorizons.core.util.threading.ThreadPools; +import com.seibel.distanthorizons.core.util.threading.ThreadPoolUtil; import org.apache.logging.log4j.Logger; import org.jetbrains.annotations.Nullable; @@ -211,7 +211,7 @@ public class NewFullDataFileHandler if (updatePosList.size() != 0) { // stop if the file handler has been shut down - ThreadPoolExecutor executor = ThreadPools.getFileHandlerExecutor(); + ThreadPoolExecutor executor = ThreadPoolUtil.getFileHandlerExecutor(); if (executor == null || executor.isTerminated()) { this.updateQueueThreadRunningRef.set(false); diff --git a/core/src/main/java/com/seibel/distanthorizons/core/file/renderfile/RenderSourceFileHandler.java b/core/src/main/java/com/seibel/distanthorizons/core/file/renderfile/RenderSourceFileHandler.java index b50dcc1d3..70ce500bf 100644 --- a/core/src/main/java/com/seibel/distanthorizons/core/file/renderfile/RenderSourceFileHandler.java +++ b/core/src/main/java/com/seibel/distanthorizons/core/file/renderfile/RenderSourceFileHandler.java @@ -33,7 +33,7 @@ import com.seibel.distanthorizons.core.level.IDhClientLevel; import com.seibel.distanthorizons.core.sql.repo.AbstractLegacyDataSourceRepo; import com.seibel.distanthorizons.core.sql.dto.LegacyDataSourceDTO; import com.seibel.distanthorizons.core.sql.repo.RenderDataRepo; -import com.seibel.distanthorizons.core.util.threading.ThreadPools; +import com.seibel.distanthorizons.core.util.threading.ThreadPoolUtil; import org.apache.logging.log4j.Logger; import java.io.IOException; @@ -126,7 +126,7 @@ public class RenderSourceFileHandler extends AbstractLegacyDataSourceHandler { try @@ -472,7 +472,7 @@ public class WorldGenerationQueue implements IWorldGenerationQueue, IDebugRender granularity, targetDataDetail, generatorMode, - ThreadPools.getWorldGenExecutor(), + ThreadPoolUtil.getWorldGenExecutor(), (DhApiChunk dataPoints) -> { try @@ -572,7 +572,7 @@ public class WorldGenerationQueue implements IWorldGenerationQueue, IDebugRender try { int waitTimeInSeconds = 3; - ThreadPoolExecutor executor = ThreadPools.getWorldGenExecutor(); + ThreadPoolExecutor executor = ThreadPoolUtil.getWorldGenExecutor(); if (executor != null && !executor.awaitTermination(waitTimeInSeconds, TimeUnit.SECONDS)) { LOGGER.warn("World generator thread pool shutdown didn't complete after [" + waitTimeInSeconds + "] seconds. Some world generator requests may still be running."); diff --git a/core/src/main/java/com/seibel/distanthorizons/core/util/ThreadUtil.java b/core/src/main/java/com/seibel/distanthorizons/core/util/ThreadUtil.java index 1ac4567d0..792b2dc9f 100644 --- a/core/src/main/java/com/seibel/distanthorizons/core/util/ThreadUtil.java +++ b/core/src/main/java/com/seibel/distanthorizons/core/util/ThreadUtil.java @@ -23,7 +23,7 @@ import com.seibel.distanthorizons.core.config.listeners.ConfigChangeListener; import com.seibel.distanthorizons.core.config.types.ConfigEntry; import com.seibel.distanthorizons.core.util.threading.DhThreadFactory; import com.seibel.distanthorizons.core.util.threading.RateLimitedThreadPoolExecutor; -import com.seibel.distanthorizons.core.util.threading.ThreadPools; +import com.seibel.distanthorizons.core.util.threading.ThreadPoolUtil; import com.seibel.distanthorizons.coreapi.ModInfo; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; @@ -33,7 +33,7 @@ import java.util.concurrent.*; /** * Handles thread pool creation. * - * @see ThreadPools + * @see ThreadPoolUtil * @see TimerUtil */ public class ThreadUtil diff --git a/core/src/main/java/com/seibel/distanthorizons/core/util/threading/ThreadPools.java b/core/src/main/java/com/seibel/distanthorizons/core/util/threading/ThreadPoolUtil.java similarity index 96% rename from core/src/main/java/com/seibel/distanthorizons/core/util/threading/ThreadPools.java rename to core/src/main/java/com/seibel/distanthorizons/core/util/threading/ThreadPoolUtil.java index 279486bf6..6924ab7b2 100644 --- a/core/src/main/java/com/seibel/distanthorizons/core/util/threading/ThreadPools.java +++ b/core/src/main/java/com/seibel/distanthorizons/core/util/threading/ThreadPoolUtil.java @@ -32,7 +32,7 @@ import java.util.concurrent.ThreadPoolExecutor; * * @see ThreadUtil */ -public class ThreadPools +public class ThreadPoolUtil { //=========================// // standalone thread pools // @@ -143,9 +143,9 @@ public class ThreadPools // worker threads - ThreadPools.lightPopulatorThreadPool.shutdownExecutorService(); - ThreadPools.chunkToLodBuilderThreadPool.shutdownExecutorService(); - ThreadPools.bufferBuilderThreadPool.shutdownExecutorService(); + ThreadPoolUtil.lightPopulatorThreadPool.shutdownExecutorService(); + ThreadPoolUtil.chunkToLodBuilderThreadPool.shutdownExecutorService(); + ThreadPoolUtil.bufferBuilderThreadPool.shutdownExecutorService(); workerThreadSemaphore = null;