I am writing an app which listens tcp connection
(see this example) . When a tcp connection
disconnected I got error read tcp ip_server.:port1->ip_client:port2: wsarecv: An existing connection was forcibly closed by the remote host.
I expected error EOF
and timeout(for conn.SetReadDeadline()
) and tried to catch error with this code:
if err != nil {
log.Println("getting error from listener")
// I thought, listener can continue work another cases
if neterr, ok := err.(net.Error); ok && neterr.Timeout() || err == io.EOF {
log.Println("Closing connection...")
break // connection will be closed
}
}
Anyone knows about this error? Do you know how to catch this error and when this error will occured ? Thanks in advance !
The usual cause of this error is that you sent data over a connection which had already been closed by the peer. In other words, an application protocol error.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With