Package net.minecraft.util.thread
Class BlockableEventLoop<R extends Runnable>
java.lang.Object
net.minecraft.util.thread.BlockableEventLoop<R>
- All Implemented Interfaces:
AutoCloseable,Executor,ProfilerMeasured,ProcessorHandle<R>
- Direct Known Subclasses:
ReentrantBlockableEventLoop,ServerChunkCache.MainThreadExecutor,SoundEngineExecutor
public abstract class BlockableEventLoop<R extends Runnable>
extends Object
implements ProfilerMeasured, ProcessorHandle<R>, Executor
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate intprivate static final org.slf4j.Loggerprivate final String -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidprotected voidvoidvoidexecuteBlocking(Runnable p_18710_) voidexecuteIfPossible(Runnable p_201937_) intprotected abstract ThreadbooleanvoidmanagedBlock(BooleanSupplier p_18702_) name()booleanpollTask()protected voidprotected booleanprotected abstract boolean<V> CompletableFuture<V> submitAsync(Runnable p_18690_) voidvoidprotected abstract RwrapRunnable(Runnable p_18704_) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface net.minecraft.util.thread.ProcessorHandle
ask, askEither, close
-
Field Details
-
name
-
LOGGER
private static final org.slf4j.Logger LOGGER -
pendingRunnables
-
blockingCount
private int blockingCount
-
-
Constructor Details
-
BlockableEventLoop
-
-
Method Details
-
wrapRunnable
-
shouldRun
-
isSameThread
public boolean isSameThread() -
getRunningThread
-
scheduleExecutables
protected boolean scheduleExecutables() -
getPendingTasksCount
public int getPendingTasksCount() -
name
- Specified by:
namein interfaceProcessorHandle<R extends Runnable>
-
submit
-
submitAsync
-
submit
-
executeBlocking
-
tell
- Specified by:
tellin interfaceProcessorHandle<R extends Runnable>
-
execute
-
executeIfPossible
-
dropAllTasks
protected void dropAllTasks() -
runAllTasks
protected void runAllTasks() -
pollTask
public boolean pollTask() -
managedBlock
-
waitForTasks
public void waitForTasks() -
doRunTask
-
profiledMetrics
- Specified by:
profiledMetricsin interfaceProfilerMeasured
-