怎么在bukkit里开同步线程啊,或者怎么正常使用Thread.sleep而不让服务器假死啊
急,在线等
急,在线等
BukkitRunnable 具体站内有教程
本帖最后由 July.七月 于 2018-11-2 22:18 编辑
Bukkit.getScheduler().runTask(new Main(), new BukkitRunnable() {
@Override
public void run() {
//to do sth
}});
路过
Bukkit.getScheduler().runTask(new Main(), new BukkitRunnable() {
@Override
public void run() {
//to do sth
}});
如果要sleep的话你可以在task里头加task= =
复制代码
plugin即插件实例,time是延时时间
或者再坑一点的= =开个异步线程?然后调Bukkit.getScheduler().callSyncMethod()然后sleep等返回值设置同步,坏方法
死循环推荐第二种方式,开异步等同步
多看看javadoc总是有好处的:)
- Bukkit.getScheduler().runTask(plugin, () -> {
- // do what f**k you want to
- Bukkit.getScheduler().runTaskLater(plugin, () -> {
- // do what f**k else you want to
- }, time);
- );
plugin即插件实例,time是延时时间
或者再坑一点的= =开个异步线程?然后调Bukkit.getScheduler().callSyncMethod()然后sleep等返回值设置同步,坏方法
死循环推荐第二种方式,开异步等同步
July.七月 发表于 2018-11-2 22:14
Bukkit.getScheduler().runTask(new Main(), new BukkitRunnable() {
@Override
public void run() ...
这个一样是在主线程里加任务
轻光233 发表于 2018-11-3 10:18
这个一样是在主线程里加任务
你这问题本身就有问题
使用Thread.sleep不假死
只有新开一个线程 或
使用Bukkit提供的方法来达到延迟执行