我正在通过 UDP 协议将数据从一个 c 程序发送到另一个
接收数据时,我处理字符串并在我的函数中使用它,问题是如果我没有时间接收新数据,因为我的函数需要更多时间才能完成,数据将堆叠,然后我将拥有处理旧数据而不是处理最近的数据,这是我实时处理的实际目标
谁能帮我这个 ?
这是我的接收代码:
addr_len = sizeof their_addr;
if ((numbytes = recvfrom(sockfd, ubuf, 6 , 0,(struct sockaddr *)&their_addr, &addr_len)) == -1)
{
perror("recvfrom");
//exit(1);
}
inet_ntop(their_addr.ss_family,get_in_addr((struct sockaddr *)&their_addr),s, sizeof s);
//printf("listener: packet is %d bytes long\n", numbytes);
ubuf[numbytes] = '\0';
printf("listener: packet contains \"%s\"\n", ubuf);