Class ServerScheduler

java.lang.Object
cn.nukkit.scheduler.ServerScheduler

public class ServerScheduler extends Object
Author:
Nukkit Project Team
  • Field Details

    • WORKERS

      public static int WORKERS
  • Constructor Details

    • ServerScheduler

      public ServerScheduler()
  • Method Details

    • scheduleTask

      public TaskHandler scheduleTask(Task task)
      设置一个只执行一次的任务 delay=0 period=0 asynchronous=false

      Set a task to be executed only once,delay=0 period=0 asynchronous=false

      Parameters:
      task - the task
      Returns:
      the task handler
    • scheduleTask

      @Deprecated public TaskHandler scheduleTask(Runnable task)
    • scheduleTask

      public TaskHandler scheduleTask(Plugin plugin, Runnable task)
      设置一个只执行一次的任务 delay=0 period=0 asynchronous=false

      Set a task to be executed only once,delay=0 period=0 asynchronous=false

      Parameters:
      plugin - the plugin
      task - the task
      Returns:
      the task handler
    • scheduleTask

      @Deprecated public TaskHandler scheduleTask(Runnable task, boolean asynchronous)
    • scheduleTask

      public TaskHandler scheduleTask(Plugin plugin, Runnable task, boolean asynchronous)
      设置一个只执行一次的任务 delay=0 period=0

      Set a task to be executed only once,delay=0 period=0

      Parameters:
      plugin - the plugin
      task - the task
      asynchronous - 是否异步执行
      Whether it executes asynchronously
      Returns:
      the task handler
    • scheduleAsyncTask

      @Deprecated public TaskHandler scheduleAsyncTask(AsyncTask task)
    • scheduleAsyncTask

      public TaskHandler scheduleAsyncTask(Plugin plugin, AsyncTask task)
      设置一个只执行一次的异步任务 Set up an asynchronous task to be executed only once
      Parameters:
      plugin - 插件实例,
      task - 异步任务
    • scheduleAsyncTaskToWorker

      @Deprecated public void scheduleAsyncTaskToWorker(AsyncTask task, int worker)
      Deprecated.
    • getAsyncTaskPoolSize

      public int getAsyncTaskPoolSize()
    • increaseAsyncTaskPoolSize

      public void increaseAsyncTaskPoolSize(int newSize)
    • scheduleDelayedTask

      public TaskHandler scheduleDelayedTask(Task task, int delay)
      设置一个只执行一次的非异步延迟任务 Set up a delayed task to be executed only once
      Parameters:
      task - 任务,可用匿名类创建
      delay - 延迟时间,单位tick(20tick = 1s)
    • scheduleDelayedTask

      public TaskHandler scheduleDelayedTask(Task task, int delay, boolean asynchronous)
      设置一个只执行一次的延迟任务

      Set up a deferred task that executes only once

      Parameters:
      task - 任务,可用lambda表达式创建
      Tasks, which can be created using lambda expressions
      delay - 延迟时间,单位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 public TaskHandler scheduleDelayedTask(Runnable task, int delay)
    • scheduleDelayedTask

      public TaskHandler scheduleDelayedTask(Plugin plugin, Runnable task, int delay)
      设置一个只执行一次的非异步(在主线程执行)延迟任务

      Set up a non-asynchronous (execute on the main thread) deferred task that executes only once

      Parameters:
      plugin - the plugin
      task - 任务,可用lambda表达式创建
      Tasks, which can be created using lambda expressions
      Returns:
      the task handler
    • scheduleDelayedTask

      @Deprecated public TaskHandler scheduleDelayedTask(Runnable task, int delay, boolean asynchronous)
    • scheduleDelayedTask

      public TaskHandler scheduleDelayedTask(Plugin plugin, Runnable task, int delay, boolean asynchronous)
    • scheduleRepeatingTask

      @Deprecated public TaskHandler scheduleRepeatingTask(Runnable task, int period)
    • scheduleRepeatingTask

      public TaskHandler scheduleRepeatingTask(Plugin plugin, Runnable task, int period)
    • scheduleRepeatingTask

      @Deprecated public TaskHandler scheduleRepeatingTask(Runnable task, int period, boolean asynchronous)
    • scheduleRepeatingTask

      public TaskHandler scheduleRepeatingTask(Plugin plugin, Runnable task, int period, boolean asynchronous)
    • scheduleRepeatingTask

      public TaskHandler scheduleRepeatingTask(Task task, int period)
    • scheduleRepeatingTask

      public TaskHandler scheduleRepeatingTask(Task task, int period, boolean asynchronous)
    • scheduleDelayedRepeatingTask

      public TaskHandler scheduleDelayedRepeatingTask(Task task, int delay, int period)
    • scheduleDelayedRepeatingTask

      public TaskHandler scheduleDelayedRepeatingTask(Task task, int delay, int period, boolean asynchronous)
    • scheduleDelayedRepeatingTask

      @Deprecated public TaskHandler scheduleDelayedRepeatingTask(Runnable task, int delay, int period)
    • 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 plugin
      task - the task
      delay - 延迟开始的时间,单位tick
      The time to delay the start in tick
      period - 周期执行的时间,单位tick
      The time of the cycle execution, in tick
      asynchronous - 是否异步执行
      Whether it executes asynchronously
      Returns:
      the task handler
    • cancelTask

      public void cancelTask(int taskId)
    • cancelTask

      public void cancelTask(Plugin plugin)
    • cancelAllTasks

      public void cancelAllTasks()
    • isQueued

      public boolean isQueued(int taskId)
    • mainThreadHeartbeat

      public void mainThreadHeartbeat(int currentTick)
    • getQueueSize

      public int getQueueSize()
    • close

      public void close()