Package cn.nukkit.scheduler
Class ServerScheduler
java.lang.Object
cn.nukkit.scheduler.ServerScheduler
- Author:
- Nukkit Project Team
-
Field Summary
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
void
cancelTask
(int taskId) void
cancelTask
(Plugin plugin) void
close()
int
int
void
increaseAsyncTaskPoolSize
(int newSize) boolean
isQueued
(int taskId) void
mainThreadHeartbeat
(int currentTick) scheduleAsyncTask
(Plugin plugin, AsyncTask task) 设置一个只执行一次的异步任务 Set up an asynchronous task to be executed only oncescheduleAsyncTask
(AsyncTask task) Deprecated.void
scheduleAsyncTaskToWorker
(AsyncTask task, int worker) Deprecated.scheduleDelayedRepeatingTask
(Plugin plugin, Runnable task, int delay, int period) scheduleDelayedRepeatingTask
(Plugin plugin, Runnable task, int delay, int period, boolean asynchronous) 设置一个延迟周期任务scheduleDelayedRepeatingTask
(Task task, int delay, int period) scheduleDelayedRepeatingTask
(Task task, int delay, int period, boolean asynchronous) scheduleDelayedRepeatingTask
(Runnable task, int delay, int period) Deprecated.scheduleDelayedRepeatingTask
(Runnable task, int delay, int period, boolean asynchronous) scheduleDelayedTask
(Plugin plugin, Runnable task, int delay) 设置一个只执行一次的非异步(在主线程执行)延迟任务scheduleDelayedTask
(Plugin plugin, Runnable task, int delay, boolean asynchronous) scheduleDelayedTask
(Task task, int delay) 设置一个只执行一次的非异步延迟任务 Set up a delayed task to be executed only oncescheduleDelayedTask
(Task task, int delay, boolean asynchronous) 设置一个只执行一次的延迟任务scheduleDelayedTask
(Runnable task, int delay) Deprecated.scheduleDelayedTask
(Runnable task, int delay, boolean asynchronous) Deprecated.scheduleRepeatingTask
(Plugin plugin, Runnable task, int period) scheduleRepeatingTask
(Plugin plugin, Runnable task, int period, boolean asynchronous) scheduleRepeatingTask
(Task task, int period) scheduleRepeatingTask
(Task task, int period, boolean asynchronous) scheduleRepeatingTask
(Runnable task, int period) Deprecated.scheduleRepeatingTask
(Runnable task, int period, boolean asynchronous) Deprecated.scheduleTask
(Plugin plugin, Runnable task) 设置一个只执行一次的任务 delay=0 period=0 asynchronous=falsescheduleTask
(Plugin plugin, Runnable task, boolean asynchronous) 设置一个只执行一次的任务 delay=0 period=0scheduleTask
(Task task) 设置一个只执行一次的任务 delay=0 period=0 asynchronous=falsescheduleTask
(Runnable task) Deprecated.scheduleTask
(Runnable task, boolean asynchronous) Deprecated.
-
Field Details
-
WORKERS
public static int WORKERS
-
-
Constructor Details
-
ServerScheduler
public ServerScheduler()
-
-
Method Details
-
scheduleTask
设置一个只执行一次的任务 delay=0 period=0 asynchronous=falseSet a task to be executed only once,delay=0 period=0 asynchronous=false
- Parameters:
task
- the task- Returns:
- the task handler
-
scheduleTask
Deprecated. -
scheduleTask
设置一个只执行一次的任务 delay=0 period=0 asynchronous=falseSet a task to be executed only once,delay=0 period=0 asynchronous=false
- Parameters:
plugin
- the plugintask
- the task- Returns:
- the task handler
-
scheduleTask
Deprecated. -
scheduleTask
设置一个只执行一次的任务 delay=0 period=0Set a task to be executed only once,delay=0 period=0
- Parameters:
plugin
- the plugintask
- the taskasynchronous
- 是否异步执行
Whether it executes asynchronously- Returns:
- the task handler
-
scheduleAsyncTask
Deprecated. -
scheduleAsyncTask
设置一个只执行一次的异步任务 Set up an asynchronous task to be executed only once- Parameters:
plugin
- 插件实例,task
- 异步任务
-
scheduleAsyncTaskToWorker
Deprecated. -
getAsyncTaskPoolSize
public int getAsyncTaskPoolSize() -
increaseAsyncTaskPoolSize
public void increaseAsyncTaskPoolSize(int newSize) -
scheduleDelayedTask
设置一个只执行一次的非异步延迟任务 Set up a delayed task to be executed only once- Parameters:
task
- 任务,可用匿名类创建delay
- 延迟时间,单位tick(20tick = 1s)
-
scheduleDelayedTask
设置一个只执行一次的延迟任务Set up a deferred task that executes only once
- Parameters:
task
- 任务,可用lambda表达式创建
Tasks, which can be created using lambda expressionsdelay
- 延迟时间,单位tick(20tick = 1s)
Delay time, in tick (20tick = 1s)asynchronous
- 是否异步执行,如果是,会启用一个新线程执行任务
Whether it executes asynchronously, and if so, enables a new thread to execute the task- Returns:
- the task handler
-
scheduleDelayedTask
Deprecated. -
scheduleDelayedTask
设置一个只执行一次的非异步(在主线程执行)延迟任务Set up a non-asynchronous (execute on the main thread) deferred task that executes only once
- Parameters:
plugin
- the plugintask
- 任务,可用lambda表达式创建
Tasks, which can be created using lambda expressions- Returns:
- the task handler
-
scheduleDelayedTask
Deprecated. -
scheduleDelayedTask
public TaskHandler scheduleDelayedTask(Plugin plugin, Runnable task, int delay, boolean asynchronous) -
scheduleRepeatingTask
Deprecated. -
scheduleRepeatingTask
-
scheduleRepeatingTask
@Deprecated public TaskHandler scheduleRepeatingTask(Runnable task, int period, boolean asynchronous) Deprecated. -
scheduleRepeatingTask
public TaskHandler scheduleRepeatingTask(Plugin plugin, Runnable task, int period, boolean asynchronous) -
scheduleRepeatingTask
-
scheduleRepeatingTask
-
scheduleDelayedRepeatingTask
-
scheduleDelayedRepeatingTask
public TaskHandler scheduleDelayedRepeatingTask(Task task, int delay, int period, boolean asynchronous) -
scheduleDelayedRepeatingTask
Deprecated. -
scheduleDelayedRepeatingTask
public TaskHandler scheduleDelayedRepeatingTask(Plugin plugin, Runnable task, int delay, int period) -
scheduleDelayedRepeatingTask
@Deprecated public TaskHandler scheduleDelayedRepeatingTask(Runnable task, int delay, int period, boolean asynchronous) -
scheduleDelayedRepeatingTask
public TaskHandler scheduleDelayedRepeatingTask(Plugin plugin, Runnable task, int delay, int period, boolean asynchronous) 设置一个延迟周期任务Set a deferral period task
- Parameters:
plugin
- the plugintask
- the taskdelay
- 延迟开始的时间,单位tick
The time to delay the start in tickperiod
- 周期执行的时间,单位tick
The time of the cycle execution, in tickasynchronous
- 是否异步执行
Whether it executes asynchronously- Returns:
- the task handler
-
cancelTask
public void cancelTask(int taskId) -
cancelTask
-
cancelAllTasks
public void cancelAllTasks() -
isQueued
public boolean isQueued(int taskId) -
mainThreadHeartbeat
public void mainThreadHeartbeat(int currentTick) -
getQueueSize
public int getQueueSize() -
close
public void close()
-
scheduleAsyncTask(Plugin, AsyncTask)