我想让recvfrom()接收消息,在没有消息到来时,等待一段时间后就停止,继续执行其他操作;但是目前我的recvfrom()现在是没有消息来就一直处于等待状态,我怎么设置呢?是console程序 while(1)  
{   
int lenth=sendto  (  theSocket,buffer,  
lstrlen  (buffer),  0,  
(SOCKADDR  *)  &saUdpServ,  
sizeof  (  SOCKADDR_IN  )); //发送一个广播包
lenth = WSAGetLastError();
Sleep(1000);

if( (lenth= recvfrom (theSocket,cRecvBuff,100,0,  //在此等待广播包的响应ACK
(SOCKADDR  FAR  *)  &saUdpServ,&nSize))==SOCKET_ERROR )
{
printf("can't receive ack!");
}
else //如果接收到了ACK就返回,没有接收到继续发送广播包
return inet_ntoa(saUdpServ.sin_addr);
}