我在connect的时候,可能会连接很长时间,为了限制一定的时间连接,如果超过了,表示超时。不知道怎么限定,望高手指点。

解决方案 »

  1.   

    http://community.csdn.net/Expert/FAQ/FAQ_Index.asp?id=196343
      

  2.   

    你可以设置SOCKET选项,
    设定它的超时时间啊
      

  3.   

    setsockopt( sock, SOL_SOCKET, SO_CONNECTTIMEO, (char *)&TimeOut, sizeof(int))???
      

  4.   

    cSock->AsyncSelect( FD_READ | FD_WRITE | FD_CLOSE | FD_CONNECT | FD_OOB );
    //连接服务器
    pconnect = cSock->Connect( TelnInfo[ TelnetID ].IP, 23 );
    这就是我的连接过程,那位高手帮我加一个限时的东西?
      

  5.   

    这样设定 connenct超时connect(....);//select 模型,即设置超时
    struct timeval timeout ;
    fd_set r;FD_ZERO(&r);
    FD_SET(cClient, &r);
    timeout.tv_sec = 15; // 设置连接超时15秒
    timeout.tv_usec =0;
    ret = select(0, 0, &r, 0, &timeout);
    if ( ret <= 0 )
    {
       // 超时处理
    }