对于IActorLocationRequest和IActorLocationResponse消息,比如
C2MXXX和M2C_XXX,M2C_XXX的处理过程中调用了SendToClient,假设发送的消息叫M2CInfo。
正常情况下,M2CInfo先于M2C_XXX返回,但是在客户端和服务器通信不频繁时,可能会出现M2CInfo晚于M2CXXX。
出现这个问题的原因在于由于客户端一段时间内(大概一分钟)没有向服务器发送IActorLocationRequest消息,服务器会Dispose掉这个Unit的ActorMessageSender

这样,SendToClient发送M2C_Info时,就会触发从ActorLoation获取ActorId,这是一个异步操作,从而导致
M2CInfo会晚于M2C_XXX到达客户端。

本次测试环境是Gate和Map在同一进程,Response返回时会等待一帧,如下

PS:ET版本是7.2