class_docstr: Explicitly coordinate the level Tornado components required to run a
  Bokeh server:
  
  * A Tornado ``IOLoop`` to run the Bokeh server machinery.
  
  * a ``BokehTornado`` Tornado application that defines the Bokeh server
    machinery.
  
  * a Tornado ``HTTPServer`` to direct HTTP requests
  
  All three of these components must be passed to ``BaseServer``, which will
  initialize the ``BokehTornado`` instance on the ``io_loop``. The
  ``http_server`` must have been previously created and initialized with the
  ``BokehTornado`` instance.
docstr: Stop the Bokeh Server.
  
  This stops and removes all Bokeh Server ``IOLoop`` callbacks, as well
  as stops the ``HTTPServer`` that this instance was configured with.
  
  Args:
      fast (bool):
          Whether to wait for orderly cleanup (default: True)
  
  Returns:
      None
docstr_tok: ["Stop","the","Bokeh","Server",".","This","stops","and","removes","all","Bokeh","Server","``","IOLoop","``","callbacks",",","as","well","as","stops","the","``","HTTPServer","``","that","this","instance","was","configured","with",".","Args",":","fast","(","bool",")",":","Whether","to","wait","for","orderly","cleanup","(","default",":","True",")","Returns",":","None"]
code: def stop(self, wait: bool = True) -> None:
      """Stop the Bokeh Server.
  
      This stops and removes all Bokeh Server ``IOLoop`` callbacks, as well
      as stops the ``HTTPServer`` that this instance was configured with.
  
      Args:
          fast (bool):
              Whether to wait for orderly cleanup (default: True)
  
      Returns:
          None
  
      """
      assert not self._stopped, "Already stopped"
      self._stopped = True
      self._tornado.stop(wait)
      self._http.stop()
  
imports: from __future__ import annotations
  import logging
  import atexit
  import signal
  import socket
  import sys
  from types import FrameType
  from typing import TYPE_CHECKING, Any, Mapping
  from tornado import netutil, version
  from tornado.httpserver import HTTPServer
  from tornado.ioloop import IOLoop
  from ..None import __version__
  from ..core import properties
  from ..core.properties import Bool, Int, Nullable, String
  from ..resources import DEFAULT_SERVER_PORT, server_url
  from ..util.options import Options
  from .tornado import DEFAULT_WEBSOCKET_MAX_MESSAGE_SIZE_BYTES, BokehTornado
  from .util import bind_sockets, create_hosts_allowlist
label_desc: Use image node_id 4 for calling the BaseServer obj's underlying member method code with example usage: obj.stop(wait) without return types