PriorityConsecutiveExecutor.java
net.minecraft.util.thread.PriorityConsecutiveExecutor
信息
- 全限定名:net.minecraft.util.thread.PriorityConsecutiveExecutor
- 类型:public class
- 包:net.minecraft.util.thread
- 源码路径:src/main/java/net/minecraft/util/thread/PriorityConsecutiveExecutor.java
- 起始行号:L8
- 继承:AbstractConsecutiveExecutor<StrictQueue.RunnableWithPriority>
- 职责:
TODO
字段/常量
- 无
内部类/嵌套类型
- 无
构造器
public PriorityConsecutiveExecutor(int priorityCount, Executor executor, String name) @ L9
- 构造器名:PriorityConsecutiveExecutor
- 源码定位:L9
- 修饰符:public
参数:
- priorityCount: int
- executor: Executor
- name: String
说明:
TODO
方法
下面的方法块按源码顺序生成。
public StrictQueue.RunnableWithPriority wrapRunnable(Runnable runnable) @ L14
- 方法名:wrapRunnable
- 源码定位:L14
- 返回类型:StrictQueue.RunnableWithPriority
- 修饰符:public
参数:
- runnable: Runnable
说明:
TODO
public <Source> CompletableFuture<Source> scheduleWithResult(int priority, Consumer<CompletableFuture<Source>> futureConsumer) @ L18
- 方法名:scheduleWithResult
- 源码定位:L18
- 返回类型:
CompletableFuture - 修饰符:public
参数:
- priority: int
- futureConsumer: Consumer<CompletableFuture
>
说明:
TODO
代码
public class PriorityConsecutiveExecutor extends AbstractConsecutiveExecutor<StrictQueue.RunnableWithPriority> {
public PriorityConsecutiveExecutor(int priorityCount, Executor executor, String name) {
super(new StrictQueue.FixedPriorityQueue(priorityCount), executor, name);
MetricsRegistry.INSTANCE.add(this);
}
public StrictQueue.RunnableWithPriority wrapRunnable(Runnable runnable) {
return new StrictQueue.RunnableWithPriority(0, runnable);
}
public <Source> CompletableFuture<Source> scheduleWithResult(int priority, Consumer<CompletableFuture<Source>> futureConsumer) {
CompletableFuture<Source> future = new CompletableFuture<>();
this.schedule(new StrictQueue.RunnableWithPriority(priority, () -> futureConsumer.accept(future)));
return future;
}
}引用的其他类
- StrictQueue
- 引用位置:
方法调用/构造调用/继承/返回值 - 关联成员:
FixedPriorityQueue(), RunnableWithPriority(), StrictQueue.FixedPriorityQueue(), StrictQueue.RunnableWithPriority()
- 引用位置: