程序包 org.bukkit.scheduler

# 类 BukkitRunnable

java.lang.Object
org.bukkit.scheduler.BukkitRunnable

所有已实现的接口:
  `Runnable`

public abstract class BukkitRunnable extends Object implements Runnable
这个类提供了简单的处理执行任务的方法.

- ## 构造器概要

  构造器
  构造器
  说明
  `BukkitRunnable()`

- ## 方法概要

  修饰符和类型
  方法
  说明
  `void`
  `cancel()`
  尝试取消这个任务
  `int`
  `getTaskId()`
  获取这个已执行的任务的任务id.
  `boolean`
  `isCancelled()`
  若该任务被取消返回true.
  `@NotNull BukkitTask`
  `runTask(@NotNull Plugin plugin)`
  让Bukkit任务调度器在下一个tick运行任务.
  `@NotNull BukkitTask`
  `runTaskAsynchronously(@NotNull Plugin plugin)`
  在Bukkit任务调度器异步运行这个任务.
  `@NotNull BukkitTask`
  `runTaskLater(@NotNull Plugin plugin, long delay)`
  在指定tick后执行该任务.
  `@NotNull BukkitTask`
  `runTaskLaterAsynchronously(@NotNull Plugin plugin, long delay)`
  让Bukkit任务调度器在指定的tick后异步执行这个任务.
  `@NotNull BukkitTask`
  `runTaskTimer(@NotNull Plugin plugin, long delay, long period)`
  在指定时间后开始以指定的间隔不断执行任务.
  `@NotNull BukkitTask`
  `runTaskTimerAsynchronously(@NotNull Plugin plugin, long delay, long period)`
  让Bukkit任务调度器在指定的tick后开始异步的以指定的间隔不断执行任务.

  ### 从类继承的方法 java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

  ### 从接口继承的方法 java.lang.Runnable

  `run`

- ## 构造器详细资料

  - ### BukkitRunnable

    public BukkitRunnable()

- ## 方法详细资料

  - ### isCancelled

    public boolean isCancelled() throws IllegalStateException
    若该任务被取消返回true.

    原文:Returns true if this task has been cancelled.

    返回:
      若该任务被取消返回true
    抛出:
      `IllegalStateException` - 若任务还未被调度

  - ### cancel

    public void cancel() throws IllegalStateException
    尝试取消这个任务

    原文：Attempts to cancel this task.

    抛出:
      `IllegalStateException` - 如果任务还没有被执行

  - ### runTask

    @NotNull public @NotNull BukkitTask runTask(@NotNull @NotNull Plugin plugin) throws IllegalArgumentException, IllegalStateException
    让Bukkit任务调度器在下一个tick运行任务.

    原文：Schedules this in the Bukkit scheduler to run on next tick.

    参数:
      `plugin` - 创建任务的插件
    返回:
      包含任务id的`BukkitTask`
    抛出:
      `IllegalArgumentException` - 如果plugin为null
      `IllegalStateException` - 如果任务已经被执行/准备执行
    另请参阅:
      - `BukkitScheduler.runTask(Plugin, Runnable)`

  - ### runTaskAsynchronously

    @NotNull public @NotNull BukkitTask runTaskAsynchronously(@NotNull @NotNull Plugin plugin) throws IllegalArgumentException, IllegalStateException
    在Bukkit任务调度器异步运行这个任务.

    异步任务不能访问任何Bukkit里的API.应着重保证异步任务的线程安全.

    原文：Asynchronous tasks should never access any API in Bukkit. Great care should be taken to assure the thread-safety of asynchronous tasks.

    Schedules this in the Bukkit scheduler to run asynchronously.

    参数:
      `plugin` - 创建任务的插件
    返回:
      包含任务id的`BukkitTask`
    抛出:
      `IllegalArgumentException` - 如果plugin为null
      `IllegalStateException` - 如果这个任务已经被执行/准备执行
    另请参阅:
      - `BukkitScheduler.runTaskAsynchronously(Plugin, Runnable)`

  - ### runTaskLater

    @NotNull public @NotNull BukkitTask runTaskLater(@NotNull @NotNull Plugin plugin, long delay) throws IllegalArgumentException, IllegalStateException
    在指定tick后执行该任务.

    原文:Schedules this to run after the specified number of server ticks.

    参数:
      `plugin` - 创建任务的插件
      `delay` - 在任务执行前等待的时间/tick
    返回:
      包含任务id的`BukkitTask`
    抛出:
      `IllegalArgumentException` - 如果plugin为null
      `IllegalStateException` - 如果这个任务已经被执行/准备执行
    另请参阅:
      - `BukkitScheduler.runTaskLater(Plugin, Runnable, long)`

  - ### runTaskLaterAsynchronously

    @NotNull public @NotNull BukkitTask runTaskLaterAsynchronously(@NotNull @NotNull Plugin plugin, long delay) throws IllegalArgumentException, IllegalStateException
    让Bukkit任务调度器在指定的tick后异步执行这个任务.

    异步任务不能访问任何Bukkit里的API.应着重保证异步任务的线程安全.

    原文：Asynchronous tasks should never access any API in Bukkit. Great care should be taken to assure the thread-safety of asynchronous tasks.

    Schedules this to run asynchronously after the specified number of server ticks.

    参数:
      `plugin` - 创建任务的插件
      `delay` - 在任务执行前等待的时间/tick
    返回:
      包含任务id的BukkitTask
    抛出:
      `IllegalArgumentException` - 如果plugin为null
      `IllegalStateException` - 如果这个任务已经被执行/准备执行
    另请参阅:
      - `BukkitScheduler.runTaskLaterAsynchronously(Plugin, Runnable, long)`

  - ### runTaskTimer

    @NotNull public @NotNull BukkitTask runTaskTimer(@NotNull @NotNull Plugin plugin, long delay, long period) throws IllegalArgumentException, IllegalStateException
    在指定时间后开始以指定的间隔不断执行任务.

    原文：Schedules this to repeatedly run until cancelled, starting after the specified number of server ticks.

    参数:
      `plugin` - 创建任务的插件
      `delay` - 在任务执行前等待的时间/tick
      `period` - 重复执行任务之间的时间间隔/tick
    返回:
      包含任务id的BukkitTask
    抛出:
      `IllegalArgumentException` - 如果插件为null
      `IllegalStateException` - 如果这个任务已经被执行/准备执行
    另请参阅:
      - `BukkitScheduler.runTaskTimer(Plugin, Runnable, long, long)`

  - ### runTaskTimerAsynchronously

    @NotNull public @NotNull BukkitTask runTaskTimerAsynchronously(@NotNull @NotNull Plugin plugin, long delay, long period) throws IllegalArgumentException, IllegalStateException
    让Bukkit任务调度器在指定的tick后开始异步的以指定的间隔不断执行任务.

    异步任务不能访问任何Bukkit里的API.应着重保证异步任务的线程安全.

    原文：Asynchronous tasks should never access any API in Bukkit. Great care should be taken to assure the thread-safety of asynchronous tasks.

    Schedules this to repeatedly run asynchronously until cancelled, starting after the specified number of server ticks.

    参数:
      `plugin` - 创建任务的插件
      `delay` - 在任务执行前等待的时间/tick
      `period` - 重复执行任务之间的时间间隔/tick
    返回:
      包含任务id的BukkitTask
    抛出:
      `IllegalArgumentException` - 如果插件为null
      `IllegalStateException` - 如果这个任务已经被执行/准备执行
    另请参阅:
      - `BukkitScheduler.runTaskTimerAsynchronously(Plugin, Runnable, long, long)`

  - ### getTaskId

    public int getTaskId() throws IllegalStateException
    获取这个已执行的任务的任务id.

    原文：Gets the task id for this runnable.

    返回:
      这个任务的任务id
    抛出:
      `IllegalStateException` - 如果这个任务还没有被执行