用CSocket开发的C/S网络程序,如果C和S之间连立的socket中断,怎样捕捉呢?!我开发的C/S的网络程序,客户端和服务器端在一台计算机上,如果运行了一些时间以后出现C和S不能通信的现象,不知道怎样捕捉这个异常?我想在中断的时候弹出一个对话框提示,不知道怎么样办啊?!请前辈赐教!!!

解决方案 »

  1.   

    看你使用那种i/o处理机制了如果是mfc的CSocket,就重写中断消息响应函数。
      

  2.   

    如何是CAsyncSocket呢?能否也使用AsyncSelect判断超时??
      

  3.   

    socket支持连接保护的,查找setsockopt以及SO_KEEPALIVE。
      

  4.   

    我顺便想知道CAsyncSocket如何设置超时(连接超时,发送超时,接受超时),以及在什么函数里处理超时情况!
      

  5.   

    也可以自己设置一个超时机制
    比如再发送数据的时候,碰到网络突然中断,那么可以先ping一下,
    然后再弄一个超时循环,来发数据,
    同理,接受也一样