code: def _start_workers(self):
          
          # creating the pool of worker process or threads
          log.debug('%s starts a %s-pool of %s workers.' % \
                    (self, self.worker_type, self.worker_num))
          self.pool = []
          for host, worker_num in \
                             [(None, self.worker_num)] + list(self.worker_remote):
              for _worker in range(worker_num):
                  __worker = Thread(target=_pool_worker, args=\
                                    (self._inqueue, self._outqueue, host)) \
                                    if self.worker_type == 'thread' else \
                             Process(target=_pool_worker, args=\
                                    (self._inqueue, self._outqueue, host))
                  self.pool.append(__worker)
          for __worker in self.pool:
              __worker.daemon = True
              __worker.start()
          log.debug('%s started the pool' % self)
docs: (internal) starts **worker pool** threads or processes.