第一次使用TCP通讯,调用的是TSEND_C,现场由于网络问题总是掉线,由于客户要求断线主动重连,我原来使用的是N秒内未收到心跳就重连,但是实际断连后,不能快速的重连。
我观察了一下TSEND_C的变化,比如正常通讯过程中,拔掉网线,会发现TSEND_C正常发送,未报错,等发送一段时间后,才会自动重连,我就一直有疑问,网线都断开了,为什么还可以发送。
当我还在纳闷的时候,突然想起年前看的赵欣老师的视频,TCP通讯中Done是通过发送数据压入堆栈后就置位,而不是发送到对方置位。
想问大家平常除了检测心跳未到达的方式检测TCP断线重连,还用什么方法。