Package net.minecraft.server.level
Class ChunkTaskDispatcher
java.lang.Object
net.minecraft.server.level.ChunkTaskDispatcher
- All Implemented Interfaces:
AutoCloseable
,ChunkHolder.LevelChangeListener
- Direct Known Subclasses:
ThrottlingChunkTaskDispatcher
public class ChunkTaskDispatcher
extends Object
implements ChunkHolder.LevelChangeListener, AutoCloseable
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final PriorityConsecutiveExecutor
static final int
private final TaskScheduler
<Runnable> private static final org.slf4j.Logger
private final ChunkTaskPriorityQueue
protected boolean
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
close()
boolean
hasWork()
void
onLevelChange
(ChunkPos p_371270_, IntSupplier p_371804_, int p_371325_, IntConsumer p_371889_) protected void
onRelease
(long p_371807_) protected void
pollTask()
protected ChunkTaskPriorityQueue.TasksForChunk
popTasks()
void
protected void
void
submit
(Runnable p_371654_, long p_371885_, IntSupplier p_371509_)
-
Field Details
-
DISPATCHER_PRIORITY_COUNT
public static final int DISPATCHER_PRIORITY_COUNT- See Also:
-
LOGGER
private static final org.slf4j.Logger LOGGER -
queue
-
executor
-
dispatcher
-
sleeping
protected boolean sleeping
-
-
Constructor Details
-
ChunkTaskDispatcher
-
-
Method Details
-
hasWork
public boolean hasWork() -
onLevelChange
public void onLevelChange(ChunkPos p_371270_, IntSupplier p_371804_, int p_371325_, IntConsumer p_371889_) - Specified by:
onLevelChange
in interfaceChunkHolder.LevelChangeListener
-
release
-
submit
-
pollTask
protected void pollTask() -
scheduleForExecution
-
onRelease
protected void onRelease(long p_371807_) -
popTasks
-
close
public void close()- Specified by:
close
in interfaceAutoCloseable
-