本帖最后由 sujiw 于 2014-6-17 17:13 编辑
ServerSocket服务器启动的时候,MC服务器不能挂!
做一个插件。这个插件里面有一个ServerSocket服务端。
然后当MC运行这个插件时同时启动ServerSocket服务端,并且MC一样在运行。而不是,运行了ServerSocket服务端后。MC就没有反应了
怎么实现?
ServerSocket服务器启动的时候,MC服务器不能挂!
做一个插件。这个插件里面有一个ServerSocket服务端。
然后当MC运行这个插件时同时启动ServerSocket服务端,并且MC一样在运行。而不是,运行了ServerSocket服务端后。MC就没有反应了
怎么实现?
额你是什么意思
这样要修改Mc服务器的配置啊
这样要修改Mc服务器的配置啊
本帖最后由 sujiw 于 2014-6-17 17:14 编辑
好吧,是我没说清楚。是做一个插件。这个插件里面有一个ServerSocket服务端。
然后当MC运行这个插件时同时启动ServerSocket服务端,并且MC一样在运行。而不是,运行了ServerSocket服务端后。MC就没有反应了
qianyunn 发表于 2014-6-17 17:09
额你是什么意思
这样要修改Mc服务器的配置啊
好吧,是我没说清楚。是做一个插件。这个插件里面有一个ServerSocket服务端。
然后当MC运行这个插件时同时启动ServerSocket服务端,并且MC一样在运行。而不是,运行了ServerSocket服务端后。MC就没有反应了
有没有试过多线程?
sujiw 发表于 2014-6-17 17:13
好吧,是我没说清楚。是做一个插件。这个插件里面有一个ServerSocket服务端。
然后当MC运行这个插件时同 ...
那可以啊,你可以让这个插件一运行就弹出一个窗口,具体我不会写{:10_517:}
多线程处理正解
API:BukkitRunnable.runTaskAsynchronously
注意在其他线程上使用Bukkit API有很大的限制,不遵循限制的话有损坏服务器数据的可能
允许使用的API有:
BukkitRunnable.runTask*
BukkitScheduler.runTask*
其他的一律禁止使用
另外,你自己的插件的代码可能也要做相应的修改才能适应多线程的环境。Java的集合通常都不是线程安全的(也就是说不能从多个线程使用)
API:BukkitRunnable.runTaskAsynchronously
注意在其他线程上使用Bukkit API有很大的限制,不遵循限制的话有损坏服务器数据的可能
允许使用的API有:
BukkitRunnable.runTask*
BukkitScheduler.runTask*
其他的一律禁止使用
另外,你自己的插件的代码可能也要做相应的修改才能适应多线程的环境。Java的集合通常都不是线程安全的(也就是说不能从多个线程使用)
多线程(小心线程安全)
这个是什么服务器?不懂!!!
