xjkx 发表于 2013-7-3 08:29:02

请教关于 mush 的断线重连问题

网络不稳定,有时候会断网,但是mush 经常在断网以后不能自动重连,zmud就没问题,“断线后重新连接”的选项是选了的,大家有什么好的解决办法么?

北大侠客行MUD,中国最好的MUD

feehoo 发表于 2013-7-3 08:56:11

可以参考mush领悟机器人的源码。用IsConnected()的返回结果判断连线状态。用Connect()连接游戏。

xjkx 发表于 2013-7-3 09:34:35

回复 2# feehoo


    多谢老兄,我去看看。

wktxbl 发表于 2013-7-3 11:31:49

挂个timer

if IsConnected() == false then Connect() end

sansouci 发表于 2017-6-13 22:11:46

挂个timer

if IsConnected() == false then Connect() end
wktxbl 发表于 2013-7-3 03:31 AM http://pkuxkx.com/forum/images/common/back.gif


    解决不了假在线的问题,也就是IsConnected() 返回的true,实际已经掉线了

oolong 发表于 2017-6-19 22:53:51

回复 5# sansouci
检查接收服务器字节数
根据bytes变化确认是否假死

creat 发表于 2017-6-20 09:34:50

这个事情解决的思路还是可以有几种的,比如下面这种:
首先:使用事件函数来断线重连
其次:用定时器定时断线
最后:用重置定时器当触发某些事件的时候执行重置定时器的函数,保证有服务器反馈的时候断线定时器持续重置

sansouci 发表于 2017-6-20 19:19:03

回复sansouci
检查接收服务器字节数
根据bytes变化确认是否假死
oolong 发表于 2017-6-19 02:53 PM http://pkuxkx.com/forum/images/common/back.gif


    你这个方法可以考虑,俺的解决方法是用多行触发,比如利用timer每5分钟检测一次服务器状态,假死的时候虽然IsConnected()仍会返回true,但要是连续两次以上就可以判断为假死并发出重连的命令。
页: [1]
查看完整版本: 请教关于 mush 的断线重连问题