+ -
当前位置:首页 → 问答吧 → 求助 BinaryFormatter.Deserialize 引发 System.OutOfMemoryException 异常

求助 BinaryFormatter.Deserialize 引发 System.OutOfMemoryException 异常

时间:2011-12-12

来源:互联网

服务端通过网络传输一个可序列化的对象给客户端,客户端接收后,使用BinaryFormatter.Deserialize 反序列化。程序运行后经常在反序列化处引发System.OutOfMemoryException异常,请问如何解决?

作者: whj518   发布时间: 2011-12-12

是不是 这个对象容量太大导致,,,,,,可以想想用分块 传输的办法解决

作者: Lxpd   发布时间: 2011-12-12

这个提示意思就是 分配的内存不足,你BinaryFormatter.Deserialize的语句下断点或输出调试日志看.

作者: zdbb   发布时间: 2011-12-12

数据接收不完全

作者: mjp1234airen4385   发布时间: 2011-12-12

引用 3 楼 mjp1234airen4385 的回复:

数据接收不完全


可能是数据粘包引起的,有没有人提供完整的接收方法?异步BeginReceive

作者: whj518   发布时间: 2011-12-12

数据包接收不完全的话,反序列化时肯定是会异常啊.
只能判断接收完成后,才能进行发序列化.

作者: enter89   发布时间: 2011-12-12