Class ThrottlingChunkTaskDispatcher
java.lang.Object
net.minecraft.server.level.ChunkTaskDispatcher
net.minecraft.server.level.ThrottlingChunkTaskDispatcher
- All Implemented Interfaces:
AutoCloseable, ChunkHolder.LevelChangeListener
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final it.unimi.dsi.fastutil.longs.LongSetprivate final Stringprivate final intFields inherited from class ChunkTaskDispatcher
DISPATCHER_PRIORITY_COUNT, sleeping -
Constructor Summary
ConstructorsConstructorDescriptionThrottlingChunkTaskDispatcher(TaskScheduler<Runnable> executor, Executor dispatcherExecutor, int maxChunksInExecution) -
Method Summary
Modifier and TypeMethodDescriptionprotected voidonRelease(long key) protected @Nullable ChunkTaskPriorityQueue.TasksForChunkpopTasks()protected voidscheduleForExecution(ChunkTaskPriorityQueue.TasksForChunk tasksForChunk) Methods inherited from class ChunkTaskDispatcher
close, hasWork, onLevelChange, pollTask, release, submit
-
Field Details
-
chunkPositionsInExecution
private final it.unimi.dsi.fastutil.longs.LongSet chunkPositionsInExecution -
maxChunksInExecution
private final int maxChunksInExecution -
executorSchedulerName
-
-
Constructor Details
-
ThrottlingChunkTaskDispatcher
public ThrottlingChunkTaskDispatcher(TaskScheduler<Runnable> executor, Executor dispatcherExecutor, int maxChunksInExecution)
-
-
Method Details
-
onRelease
protected void onRelease(long key) - Overrides:
onReleasein classChunkTaskDispatcher
-
popTasks
- Overrides:
popTasksin classChunkTaskDispatcher
-
scheduleForExecution
- Overrides:
scheduleForExecutionin classChunkTaskDispatcher
-
getDebugStatus
-