日期:2014-05-20  浏览次数:20818 次

怎样模拟TCP连接断开?
假设A和B连接成功,两边在发送一些数据后,都停止了接收和发送,这时中间的物理链路断开了,比如中间的路由器什么的断开了。比如用select侦听,这时A和B应该都收不到信号。
但是我通过 kill -9,拔网线等都没法模拟这种情况。总会收到read通知,然后读取抛出异常。

请问怎样才能模拟TCP连接断开?

------解决方案--------------------
每隔若干秒发送测试包,收不到就说明断开了
抛出的异常在catch中处理掉就行了
------解决方案--------------------
探讨
。。貌似答非所问

------解决方案--------------------
或者关路由器
再或者禁用本地连接
反正你只要在发生异常的时候,不断重新尝试连接,就可以在网络恢复的时候,自动恢复通信了