title: Golang TCP error wsarecv
body: <p>I am writing an app which listens <code>tcp connection</code> (see <a href="https://groups.google.com/forum/#!msg/golang-dev/UXJ_a03MhcU/HcTwv224qpUJ" rel="noreferrer">this example</a>) . When a <code>tcp connection</code>  disconnected I got error <strong><code>read tcp ip_server.:port1-&gt;ip_client:port2: wsarecv: An existing connection was forcibly closed by the remote host.</code></strong> 
  I expected error <code>EOF</code> and timeout(for <code>conn.SetReadDeadline()</code>) and tried to catch error with this code:</p>
  
  <pre><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 &amp;&amp; neterr.Timeout() || err == io.EOF {
          log.Println("Closing connection...")
          break // connection will be closed 
      }
  }
  </code></pre>
  
  <p>Anyone knows about this error? Do you know how to catch this error and when this error will occured ? Thanks in advance !</p>