code: @Override
    public void close()
      throws IOException
    {
      long fd;
  
      synchronized (this) {
        fd = _fd;
        _fd = 0;
      }
      
      if (fd != 0) {
        closeNative(fd);
      }
    }
docs: Closes the socket.