code: def __start_command_queue_listener(self):
          
          thread_function = self.__command_queue_listener
  
          class QueueListenerThread(threading.Thread):
              def run(qltself):
                  thread_function()
  
          assert not hasattr(self, "__queue_listener_thread")
          self.log.debug("Starting queue listener thread")
          self.__queue_listener_thread = QueueListenerThread()
          self.__queue_listener_thread.daemon = True
          self.__queue_listener_thread.name = "Command Queue Listener"
          self.__queue_listener_thread.start()
docs: Start the function __command_queue_listener in a separate thread. This
          function continuously listens to the pipe connected to the frontend.