in mozregression/build_range.py [0:0]
def _fetch(self, indexes):
indexes = set(indexes)
need_fetch = any(not self._future_build_infos[i].is_available() for i in indexes)
if not need_fetch:
return
threads = [Thread(target=self.__getitem__, args=(i,)) for i in indexes]
for thread in threads:
thread.daemon = True
thread.start()
for thread in threads:
while thread.is_alive():
thread.join(0.1)