title: Unblock recvfrom when socket is closed
body: <p>Let's say I start a thread to receive on a port. The socket call will block on recvfrom.
  Then, somehow in another thread, I close the socket.</p>
  
  <p>On Windows, this will unblock recvfrom and my thread execution will terminate.</p>
  
  <p>On Linux, this does not unblock recvfrom, and as a result, my thread is sitting doing nothing forever, and the thread execution does not terminate.</p>
  
  <p>Can anyone help me with what's happening on Linux? When the socket is closed, I want recvfrom to unblock</p>
  
  <p>I keep reading about using select(), but I don't know how to use it for my specific case.</p>