class_docstr: Dispatcher object that communicates and coordinates individual workers.
  
  Warnings
  --------
  There should never be more than one dispatcher running at any one time.
docstr: Atomically pop a job from the queue.
  
  Parameters
  ----------
  worker_id : int
      The worker that requested the job.
  
  Returns
  -------
  iterable of list of (int, float)
      The corpus in BoW format.
docstr_tok: ["Atomically","pop","a","job","from","the","queue",".","Parameters","--","--","--","--","--","worker_id",":","int","The","worker","that","requested","the","job",".","Returns","--","--","--","-","iterable","of","list","of","(","int",",","float",")","The","corpus","in","BoW","format","."]
code: def getjob(self, worker_id):
      """Atomically pop a job from the queue.
  
      Parameters
      ----------
      worker_id : int
          The worker that requested the job.
  
      Returns
      -------
      iterable of list of (int, float)
          The corpus in BoW format.
  
      """
      logger.info("worker #%i requesting a new job", worker_id)
      job = self.jobs.get(block=True, timeout=1)
      logger.info(
          "worker #%i got a new job (%i left)",
          worker_id,
          self.jobs.qsize(),
      )
      return job
  
imports: import argparse
  import os
  import sys
  import logging
  import threading
  import time
  from queue import Queue
  import Pyro4
  from gensim import utils
  from gensim.models.lda_worker import LDA_WORKER_PREFIX
label_desc: Use image node_id 4 for calling the Dispatcher obj's underlying member method code with example usage: obj.getjob(worker_id) and returns: job