调度程序编程
很少有 Bukkit API 方法是线程安全的,可以异步调用。出于这个原因,除了少数例外,Bukkit API 方法应该只在主线程上运行。
在 scheduleSync
方法内运行的代码,以及 runTask
方法将在主线程上运行。
在 runTaskAsynchronously
内运行的代码将从主线程异步运行。异步方法对于在不延迟服务器的情况下进行大型数学或数据库操作非常有用,但如果用于调用 Bukkit API 方法,则会导致未定义的行为。因此,应该在异步代码之后运行的 Bukkit API 方法应始终放在 runTask
方法中。