选择性重复协议中的定时器(C)

时间:2016-10-25 09:20:08

标签: c timer udp

我被要求用C中的UDP数据包实现选择性重复协议。我不能使用线程。有人告诉我使用select函数。目前,我的程序看起来像这样。发送方和接收方程序都将执行此循环,以便分别向另一方发送数据和确认:

fd_set sfds;
FD_ZERO(&sfds);

while(true)
{
    FD_SET(socket_file_descriptor,&sfds);

    select(socket_file_descriptor + 1,&sfds, NULL, NULL, NULL);

    if(FD_ISSET(socket_file_descriptor, &sfds)) 
    {
        //...
    }
}

问题:如何实现发送方的循环,以便为每个要发送的数据包设置计时器?我听说select有一个timeout参数,但我不确定如何帮助管理多个计时器。

0 个答案:

没有答案