小弟最近做个项目,就是当用户连接到服务器之后,如果没有在可以连接的时间范围内,就中断他的连接,不知道各位有没有好的想法,和建议。拜托了

解决方案 »

  1.   

    Server检查Client连接建立了多长时间,如果时间过长,就关闭连接
    int nSeconds = 0;
    int nLen = sizeof(nSeconds);
    getsockopt(SOCKET, SOL_SOCKET, SO_CONNECT_TIME, (char*)&nSeconds, &nLen);
    if(-1 != nSeconds && nSeconds > 2*60) // 大于2分钟就关闭连接
    {
     shutdown(SOCKET, SD_BOTH);
     closesocket(SOCKET);
    }
      

  2.   

    我描述的有问题,我指的是windows系统用户,不在设置的登录时间内登录,让他退出登录
      

  3.   

    Server检查Client连接建立了多长时间,如果时间过长,就关闭连接
    int nSeconds = 0;
    int nLen = sizeof(nSeconds);
    getsockopt(SOCKET, SOL_SOCKET, SO_CONNECT_TIME, (char*)&nSeconds, &nLen);
    if(-1 != nSeconds && nSeconds > 2*60) // 大于2分钟就关闭连接
    {
     shutdown(SOCKET, SD_BOTH);
     closesocket(SOCKET);
    }