docs: def add_xenon_worker(self, worker_config):
          """Adds a worker to the pool; sets gears in motion."""
          c = XenonInteractiveWorker(self.machine, worker_config)
          w = RemoteWorker(
              worker_config.name, threading.Lock(),
              worker_config.n_threads, [], *c.setup())
  
          with self.wlock:
              self.workers[worker_config.name] = w
  
          def populate(job_source):
              """Populate the worker with jobs, if jobs are available."""
              with w.lock, self.plock:  # Worker lock ~~~~~~~~~~~~~~~~~~
                  while len(w.jobs) < w.max and not self.job_queue.empty():
                      msg = next(job_source)
                      w.sink.send(msg)
  
                      if msg is not EndOfQueue:
                          key, job = msg
                          w.jobs.append(key)
                      else:
                          break
              # lock end ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  
          def activate(_):
              """Activate the worker."""
              job_source = self.job_queue.source()
              populate(job_source)
  
              sink = self.result_queue.sink()
  
              for result in w.source:
                  sink.send(result)
  
                  # do bookkeeping and submit a new job to the worker
                  with w.lock:  # Worker lock ~~~~~~~~~~~~~~~~~~~~~
                      w.jobs.remove(result.key)
                  populate(job_source)
                  # lock end ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  
              for key in w.jobs:
                  sink.send(ResultMessage(
                      key, 'aborted', None, 'connection to remote worker lost.'))
  
          # Start the `activate` function when the worker goes online.
          t = threading.Thread(
              target=self.count(c.wait_until_running), args=(activate,),
              daemon=True)
          t.start()