我用 C 中的 sendto 函数得到了奇怪的结果。(LINUX)我想做的是实现一种可靠的 UDP 方案。
下面提供的代码片段是计时器的一部分,它在丢弃数据包时到期,并向进程发送消息以重新传输该数据包。
我遇到的奇怪问题是,当传输一个大文件时说......> 300KB 下面给出的代码完美运行(即执行其他部分)但是在发送了一定数量的数据包之后......它执行然后部分。!!!
这很奇怪,因为该代码适用于大约 250 个数据包,但使用 251 个数据包 kabooom !!!
n = sendto(sockfd, &(forwardPeer->id), sizeof(forwardPeer->id), 0, (struct sockaddr*)&tcpd_addr, sizeof(tcpd_addr));
if(n<0)
printf("\n error sending to tcpdc");
else
printf("\n message sent to tcpdc");
请帮忙!!!!提前致谢