我只能在select()API中将最大值设置为20秒作为timeout参数.无论我在20以上给出什么值,select()在20秒后自己返回...所以我试图写一个1分钟超时的循环,就像这样
int timeoutcount = 0;
do
{
FD_ZERO(&fd);
FD_SET(sock,&fd);
timeout.tv_sec = 20;
timeout.tv_usec = 0;
rc = select (sock+1,&fd,null,null,&timeout);
if(rc ==0)
timeoutcount += 20;
}
while(rc ==0 && timeoutcount <60)
Run Code Online (Sandbox Code Playgroud)
请帮帮我......我会以正确的方式去吗?如果是这样,选择在第一次超时后返回1.请帮我解决这个问题注意:我在目标C中使用它