我有一个功能。正确时,我只想每1秒钟进行一次。我不能使用Thread.sleep()
,因为我正在制作Minecraft插件,它将停止服务器上的所有进程。还有另一种方法怎么做?
感谢您的回复。
最佳答案
您要查找的是Bukkit Scheduler
。它已集成到默认插件API中,可用于解决您的任务,如下所示:
int taskID = Bukkit.getScheduler().scheduleSyncRepeatingTask(plugin, new Runnable() {
@Override
public void run() {
// do stuff
}
}, delay, repeat);
将
delay
设置为0,将重复项设置为20
(20滴答声是1秒)。使用以下命令停止它:
Bukkit.getScheduler().cancelTask(taskID);