code: def http_daemon_thread(self):
          
          logger.debug("HTTP thread running")
          try:
              # This function is a blocking function serving HTTP protocol
              self.http_daemon.run()
          except PortNotFree as exp:
              logger.exception('The HTTP daemon port is not free: %s', exp)
              raise
          except Exception as exp:  # pylint: disable=broad-except
              self.exit_on_exception(exp)
          logger.debug("HTTP thread exiting")
docs: Main function of the http daemon thread will loop forever unless we stop the root daemon
  
          The main thing is to have a pool of X concurrent requests for the http_daemon,
          so "no_lock" calls can always be directly answer without having a "locked" version to
          finish. This is achieved thanks to the CherryPy thread pool.
  
          This function is threaded to be detached from the main process as such it will not block
          the process main loop..
          :return: None