我實現C中的socket編程項目我使用掌握插座的問題,並選擇
選擇()
從客戶端等待數據。我有兩個UDP套接字,並且選擇調用總是忽略我的一個套接字。任何人都可以簡要描述我應該從哪裏開始尋找它?這是我的服務器正在做什麼
waitThreshold.tv_sec = 5000;
waitThreshold.tv_usec = 50;
if(sd > sd1)
max_sd = (sd + 1);
else if(sd1 > sd)
max_sd = (sd1 + 1);
FD_ZERO(&read_sds);
FD_SET(sd, &read_sds);
FD_SET(sd1, &read_sds);
ret = select(max_sd, &read_sds, NULL, NULL, &waitThreshold);
if(ret <0)
{
printf("\nSelect thrown an exception\n");
return 0;
}
else if(FD_ISSET(sd, &read_sds))
{
// code for socket one
}
else if(FD_ISSET(sd1, &read_sds))
{
// code for socket two
}