我正在尝试发送327200 字节帧流
所以我决定把每一帧分成6个包,每个包51200字节,然后发送;
void sendframe(char *data)
{
char *tmparr[6];
for(int i=0;i<6;i++)
{
tmparr[i] = data +(i*51200);
}
for(int i=0;i<6;i++)
{
n = sendto(sockfd, tmparr[i], 51200, 0, (struct sockaddr*)&serveraddr, sizeof(serveraddr));
if (n < 0)
error("ERROR in sendto");
}
}
为什么服务器只收到 4 或 5 个数据包?从不 6 也不小于 4,并且它们在包中没有丢包,每个包是 51200 字节,丢包的只是包号它从来没有收到不完整的包??
请注意: 我使用的是 linux,发送者和接收者是 localhost