【发布时间】:2013-04-01 11:58:15
【问题描述】:
我编写了一个与特定端口上的服务器交互的小程序。该程序运行良好,但是:
一旦程序意外终止,并且从此套接字连接显示为CLOSE_WAIT 状态。如果我尝试运行一个程序,它会挂起,我必须强制它关闭,这会累积 更多 CLOSE_WAIT 套接字连接。
有没有办法刷新这些连接?
【问题讨论】:
-
你不能(也不应该)。 CLOSE_WAIT 是 TCP 定义的状态,用于关闭连接,等待对方确认。
-
另请参阅 unix.stackexchange.com/questions/10106/… ... 我不会重复投票,因为它最终会将问题作为题外话结束。
-
@vonbrand 不,不是,恰恰相反。它是已被对等方关闭并正在等待本地应用程序关闭其结束的连接的状态。
-
如果你使用 Commons HttpClient 那么nuxeo.com/blog/… 有很多相关信息。来自 RFC 2616 第 14 节:不支持持久连接的 HTTP/1.1 应用程序必须在每条消息中包含“关闭”连接选项。