+ -
当前位置:首页 → 问答吧 → 使用winsock怎样判断对方异常中断

使用winsock怎样判断对方异常中断

时间:2011-12-21

来源:互联网

我是在vc6.0下使用winsock写的一个C/S模式的通信程序,服务器端程序运行在pc机上,客户端是自己做的一个PCB开发板,用gprs连接到服务器。现在我想知道怎么样在服务器端能判断客户端的异常关闭而导致的通信异常中断。我查了一些资料,说是可以利用TCP的keepalive机制能够解决这个问题,我现在已经在服务器端打开了keepalive,并且设置好了keepalive的相关参数,但是TCP的keepalive机制在捕获到客户端异常中断之后并不会主动在应用程序中反应出来,必须通过在程序中自己写程序来捕获。那么我现在有两个问题:
1.在通信过程中设置了keepalive机制是只影响当前程序中中的通信套接字呢还是会影响系统的全部套接字;
2.怎样在程序中捕获在启动keepalive机制后,客户端程序通信异常中断,在程序中该怎样实现,希望能附上源码。
万分谢谢 
如果源码比较多,请发给我邮箱吧 邮箱[email protected]

作者: zwd602   发布时间: 2011-12-21

select机制。

据说很多服务器都用这机制。

作者: jennyvenus   发布时间: 2011-12-21