class_docstr: Server that listens for inter-process messages.
  
  Messages are exchanged as pickle-encoded objects.
class_docstr_tok: ["Server","that","listens","for","inter-process","messages",".","Messages","are","exchanged","as","pickle-encoded","objects","."]
docstr: Stops and shuts down the server.
  
  Interrupts serve_forever() if necessary.
docstr_tok: ["Stops","and","shuts","down","the","server",".","Interrupts","serve_forever","(",")","if","necessary","."]
code: def stop(self):
      """Stops and shuts down the server.
  
      Interrupts serve_forever() if necessary."""
      with self.__lock:
          if self.__in_serve_forever:
              self.shutdown()
      self.server_close()
  
file_path: fiftyone/fiftyone/service/ipc.py
imports: import pickle
  import socket
  import socketserver
  import threading
label_desc: Use image node_id 2 for calling the IPCServer obj's underlying member method code with example usage: obj.stop() without return types