code: def _listen_inbox_messages(self):
          
          # Collect messages in a queue
          inbox_queue = Queue(maxsize=self._n_jobs * 4)
  
          threads = []  # type: List[BotQueueWorker]
  
          try:
              # Create n_jobs inbox threads
              for i in range(self._n_jobs):
                  t = BotQueueWorker(name='InboxThread-t-{}'.format(i),
                                     jobs=inbox_queue,
                                     target=self._process_inbox_message)
                  t.start()
                  self._threads.append(t)
  
              # Iterate over all messages in the messages stream
              for message in self._reddit.inbox.stream():
                  # Check for stopping
                  if self._stop:
                      self._do_stop(inbox_queue, threads)
                      break
  
                  inbox_queue.put(message)
  
              self.log.debug('Listen inbox stopped')
          except Exception as e:
              self._do_stop(inbox_queue, threads)
              self.log.error('Exception while listening to inbox:')
              self.log.error(str(e))
              self.log.error('Waiting for 10 minutes and trying again.')
              time.sleep(10 * 60)
  
              # Retry:
              self._listen_inbox_messages()
docs: Start listening to messages, using a separate thread.