【发布时间】:2017-01-19 12:50:46
【问题描述】:
所以我在这里遇到了这个问题,我正在使用openfl.net.Socket 连接我的服务器并从中接收消息。
问题是服务器几乎同时发送两条消息,而我的套接字似乎只读取一条消息,我尝试在第二条消息上放置一个断点并在它停止后立即释放它(比如 0.5 秒的睡眠),所以我的客户收到两条消息,但几乎同时发送两条消息我只收到一条...提示?
socket.addEventListener(ProgressEvent.SOCKET_DATA, onResponse);
function onResponse(e:ProgressEvent):Void
{
trace("response");
if (socket.bytesAvailable > 0)
{
var size:Int = socket.readInt();
var domainId:Int = socket.readInt();
var messageId:Int = socket.readInt();
var count:Int = socket.readInt();
var socketData:String = socket.readUTFBytes(socket.bytesAvailable);
trace("RECEIVE: " + socketData);
var message:Message = Message.JSONToMessage(socketData);
Domain.processMessage(message);
}
}
我希望我说清楚了
【问题讨论】:
-
当您只收到一条消息时,大小是多少?是发送的两条消息的总和吗?
-
是的!好一个!!我该如何解决?