java - Bukkit 可运行提示

标签 java runnable bukkit

您好,您有什么想法可以使 scheduleSyncDelayedTask 不取消之前的任务,该任务应该运行并稍后取消?

for(int x = 0; x < 8; x++){
    int taskID = Bukkit.getServer().getScheduler().scheduleSyncRepeatingTask(Main.getPlugin(), new Runnable() {        
        @Override
        public void run() {                 
            CreateItems.createItemsOnStand2(player, bedna, listitems);      
        }
    }, 30*x , 2+x);

    Bukkit.getServer().getScheduler().scheduleSyncDelayedTask(Main.getPlugin(), new Runnable() {
        public void run() {
            Bukkit.getScheduler().cancelTask(taskID);
        }
    }, (x==0) ? 30 : 30*x);     
}

最佳答案

可以使用BukkitRunnables进行任务调度

new BukkitRunnable() {
    @Override
    public void run() {
        //Code you need running
        this.cancel();    //Cancelling
    }
}.runTaskTimer(pluginInstance, delayTime, repeatingTime);



 new BukkitRunnable() {
    @Override
    public void run() {
        //Code you need running
        this.cancel();    //Cancelling
    }
}.runTaskLater(pluginInstance, delayTime);

它使得任务可以很容易地创建并且可以自行取消

关于java - Bukkit 可运行提示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37955355/

相关文章:

java - JSF:绝对需要将昂贵的业务逻辑放入访问器方法中。如何避免多次调用这种昂贵的BL

java - 仅匹配 "<span>something</span>endofline"而不是 "<span>something</span></span>"

java - 我对线程失去了理智

java - 如何正确重写 Runnable.run(),以便它可以接受参数?

java - 修改服务器以允许多个客户端同时连接

java - 如何让一个函数每 2 个刻度被调用一次

java - 通过套接字发送时 Jar 文件被损坏

java - 空指针异常 : fav_up_btn1 = null

minecraft - 是否可以使用 Bukkit for Minecraft 来定义一种新的生物?

c# - 合并不同语言的程序