ET8.1。客户端(手机)切到后台,这时服务器给客户端发送一条消息A,一秒后将session dispose。然后客户端切回来,正常情况应该是先收到消息A,再收到session 断开的FIN消息。但偶尔会出现收不到消息A,只收到Fin消息。
例如顶号登录时,先给客户端发送一条A2C_Disconnect,然后一秒后将session dispose。客户端切回来后有时会出现收不到A2C_Disconnect。如果客户端一直保持在前台则不会出现这种情况。
大佬们这个问题有什么可能的原因呢?
IxbxAx 是服务器发来的,
是不是因为后台切到前端时触发了断线重连的机制,然后A2C_Disconnect这个发给客户端的消息是上一个连接的消息了,新连接就会收不到了。
dred 不会,前端切到后台后就不update了,不会触发断线重连。况且如果是新连接的话收不到a2c_disconnect,也不应该收到fin消息
后台期间没收到消息A,回到前台收到FIN消息,从物理上来讲,这时候就算要求服务端重传消息A,连接也已经断了
Binasphere A消息和fin消息不是都是一种字节流么,为啥A消息没收到而fin消息却收到了?