code: def join(self):
          
          self._dbg(2, 'Waiting for the queue to finish.')
          self.workqueue.wait_until_done()
          for child in list(self.pipe_handlers.values()):
              child.join()
          self._del_status_bar()
          self._print_status_bar()
          gc.collect()
docs: Waits until all jobs are completed.