0

在 http1.1(http://www.w3.org/Protocols/rfc2616/rfc2616-sec8.html)中,它说:

当客户端或服务器希望超时时,它应该在传输连接上发出正常关闭。客户端和服务器都应该不断地观察传输关闭的另一端,并在适当的时候做出响应。

我的问题是:超时时如何在http服务器和浏览器端发出优雅的关闭?

4

1 回答 1

0

您必须在任何一侧关闭 TCP 连接。另一端的连接将自动关闭。

如果你想知道如何实现自动关闭:

当对方想要关闭连接时,它会在tcp标题处发送 FIN。在程序方面,您的套接字将由select函数激活,recv函数返回将为 0。所以:

if (recv(socket, ...) == 0) 
  closesocket(socket);
于 2011-08-28T11:07:37.210 回答