class_docstr: The nameserver serves as a phonebook-like lookup table for your workers. Unique names are created so the workers
  can work in parallel and register their results without creating racing conditions. The implementation uses
  `PYRO4 <https://pythonhosted.org/Pyro4/nameserver.html>`_ as a backend and this class is basically a wrapper.
class_docstr_tok: ["The","nameserver","serves","as","a","phonebook-like","lookup","table","for","your","workers",".","Unique","names","are","created","so","the","workers","can","work","in","parallel","and","register","their","results","without","creating","racing","conditions",".","The","implementation","uses","`","PYRO4","<","https",":","\/\/pythonhosted.org\/Pyro4\/nameserver.html",">","`","_","as","a","backend","and","this","class","is","basically","a","wrapper","."]
docstr: clean shutdown of the nameserver and the config file (if written)
docstr_tok: ["clean","shutdown","of","the","nameserver","and","the","config","file","(","if","written",")"]
code: def shutdown(self):
      """
      clean shutdown of the nameserver and the config file (if written)
      """
      if not self.pyro_ns is None:
          self.pyro_ns.shutdown()
          self.pyro_ns = None
  
      if not self.conf_fn is None:
          os.remove(self.conf_fn)
          self.conf_fn = None
  
file_path: HpBandSter/hpbandster/core/nameserver.py
imports: import os
  import pickle
  import json
  import threading
  import Pyro4.naming
label_desc: Use image node_id 3 for calling the NameServer obj's underlying member method code with example usage: obj.shutdown() without return types