我正在做一些与C#.net中的套接字编程相关的工作。因此,如果你想通过套接字发送对象列表(显然是以字节为单位),那么接收者没有关于List长度和它应该读取多少字节的信息,除非你在发送List之前发送有关长度的信息(简单和明显的解决方案) 但是如果我使用二进制格式化器,我不必担心大小对吗?我可以使用这种方法发送尽可能多的数据,是否有任何限制?限制通过此发送和接收数据。
这是发送数据的一部分
TcpClient client = new System.Net.Sockets.TcpClient(serverip, serverport);
NetworkStream ns = client.GetStream();
IFormatter formatter = new BinaryFormatter();
formatter.Serialize(ns, List<Object>);
这是用于接收数据..
List<Object> list=(List<Object>)formatter.Deserialize(ns);
仅供参考:我已经测试了2千多万个对象,它的工作正常。 我应该继续使用吗?
答案 0 :(得分:0)
当您使用NetworkStream时,对大小的技术限制是long.MaxValue。 但你应该考虑几件事: