code: def wait_for(self, ports, interval=1.0, timeout=30, to_start=True):
          
          threads = []
          queue = Queue.Queue()
  
          for port in ports:
              threads.append(threading.Thread(target=wait_for_host, args=(
                  port, interval, timeout, to_start, queue,
                  self.ssl_pymongo_options)))
  
          if self.args and 'verbose' in self.args and self.args['verbose']:
              print("waiting for nodes %s..."
                    % ('to start' if to_start else 'to shutdown'))
  
          for thread in threads:
              thread.start()
  
          for thread in threads:
              thread.join()
  
          # get all results back and return tuple
          return tuple(queue.get_nowait() for _ in ports)
docs: Spawn threads to ping host using a list of ports.
  
          Returns when all hosts are running (if to_start=True) / shut down (if
          to_start=False).