c#编程,socket Receive 接受时怎么判断包结束

2025-03-07 11:10:15
推荐回答(2个)
回答1:

你看看这样是否可行:
skt.Receive方法会返回一个数值,表明实际收到的数据量,当这个值小于Buffer的总大小时,就认为数据传送完了
Socket skt = null;
//初始化skt
const int BuffSize = 1024;
byte[] buffer =new byte[BuffSize];
int realSize = 0;
while ((realSize = skt.Receive(buffer)) == BuffSize)
{
//保存buff数据
}
//保存buff数据

回答2:

约定结束消息,