是否可以检查TCP连接是否断开而不写入?

时间:2012-03-28 05:34:36

标签: perl networking tcp

我想知道是否可以确定是否已断开连接的套接字连接而不尝试写入。

IO::Select仍表示即使在套接字连接丢失后也可以使用can_write写入套接字。

是否可以在不写入的情况下检查TCP连接是否已断开连接(在计划外网络中断的情况下)。

2 个答案:

答案 0 :(得分:3)

这更像是TCP而不是Perl问题。

断开的有线/互联网连接等事件不会导致TCP事件。因此,您必须写入TCP连接以确保它仍然连接。您可以为唯一的插件添加ping / echo消息,以便知道连接仍然可用。

答案 1 :(得分:1)

一般来说,没有。你写作时通常只会失败:如果你从不写作,它就会坐在那里。如果你完全失去网络连接,我会看到错误弹出(在Windows上:没有在Linux上尝试过)但你通常需要尝试写入它来验证它是否存活。