Socket接收数据时,断包,延迟的情况的处理方法

思路就是从缓存流里得到多少字节,就写到一个容器里,直到全部数据都写进去后,就可以从这个容器里获取想要的数据了。

代码

mysocket.addEventListener(ProgressEvent.SOCKET_DATA,socketDataHandler);
function socketDataHandler(event:ProgressEvent):void {
        var bytes:ByteArray =new ByteArray();
        while (mysocket.bytesAvailable) {
                mysocket.readBytes(bytes,0,mysocket.bytesAvailable);
        }
        try {
                var obj:Object=bytes.readObject();
        } catch (event:Error) {
                //
        }
}
原文地址:https://www.cnblogs.com/AS30/p/2194463.html