code: func (s *Server) Close() error {
  	s.listenerMutex.Lock()
  	defer s.listenerMutex.Unlock()
  	s.closed = true
  	if s.listener != nil {
  		err := s.listener.Close()
  		s.listener = nil
  		return err
  	}
  	return nil
  }
docs: // Close the server immediately, aborting requests and sending CONNECTION_CLOSE frames to connected clients.
  // Close in combination with ListenAndServe() (instead of Serve()) may race if it is called before a UDP socket is established.