O
o19314
Unregistered / Unconfirmed
GUEST, unregistred user!
ClientSocket 的Close过程和free过程都是非阻塞型的,没有返回值,也就是说我们
调用了这两个过程后不能保证TCP连接的双向终止。在TCP终止过程,如果发生FIN或ACK
丢失的话,程序是没有办法知道的,我们的关闭动作也就不能正确完成了
我做了一个实验,在执行ClientSocket.Close时拔掉网线,现象是:程序照样可以运
行,且ClientSocket的ACTIVE确实变成了FALSE,但对端却一直保持这这个连接。
请问:我的上述理解是否正确?如何解决这个问题?有没有办法保证TCP连接的双向终
止?
调用了这两个过程后不能保证TCP连接的双向终止。在TCP终止过程,如果发生FIN或ACK
丢失的话,程序是没有办法知道的,我们的关闭动作也就不能正确完成了
我做了一个实验,在执行ClientSocket.Close时拔掉网线,现象是:程序照样可以运
行,且ClientSocket的ACTIVE确实变成了FALSE,但对端却一直保持这这个连接。
请问:我的上述理解是否正确?如何解决这个问题?有没有办法保证TCP连接的双向终
止?