[erlang-questions] ssl_closed not always received
Roger Lipscombe
roger@REDACTED
Mon Apr 11 10:23:42 CEST 2016
On 10 April 2016 at 22:34, Khitai Pang <khitai.pang@REDACTED> wrote:
> How to make sure that the server process always get ssl_closed when the
> client process on a remote host quits?
In the general case, you *can't*. This is due to the vagaries of TCP.
To close a socket, the client will send a FIN packet to the server. If
the network connection is lost (consider simply unplugging the cable),
then the FIN will *never* arrive. If you need to know when the client
has gone away, either implement some kind of application-level
keepalive or enable TCP keepalive.
More information about the erlang-questions
mailing list