Commit 29033fb3 authored by Jan Kiene's avatar Jan Kiene
Browse files

wait for smaller amount of time when running threaded

parent b9842dfd
Loading
Loading
Loading
Loading
+26 −30
Original line number Diff line number Diff line
@@ -1578,8 +1578,7 @@ class IvasModeRunner(IvasModeCollector.IvasModeCollector):
                            executor.submit(self.ivas_enc_thread, mode, config)
                        )
                while run_dec:

                    self.lock.acquire()
                    with self.lock:
                        # check if all enc tasks are done, either regularily or with exceptions
                        try:
                            finished_enc_tasks = concurrent.futures.wait(
@@ -1591,23 +1590,20 @@ class IvasModeRunner(IvasModeCollector.IvasModeCollector):
                            # not all done yet, continue...
                            pass

                    self.lock.release()

                    self.dec_queue["condition"].acquire()
                    with self.dec_queue["condition"]:
                        if not self.dec_queue["dec_entries"]:
                            all_encoded = self.dec_queue["all_encoded"]
                        if all_encoded and self.stats["num_modes"] == self.stats["num_modes_finished"]:
                            all_modes_done = self.stats["num_modes"] == self.stats["num_modes_finished"]
                            if all_encoded and all_modes_done:
                                self.dec_queue["condition"].notify()
                            self.dec_queue["condition"].release()
                                break
                        self.dec_queue["condition"].wait(10)
                            self.dec_queue["condition"].wait(1)

                        while self.dec_queue["dec_entries"] != []:
                            config = self.dec_queue["dec_entries"].pop(0)
                            tasks_dec.append(executor.submit(self.ivas_dec_thread, config))

                        self.dec_queue["condition"].notify()
                    self.dec_queue["condition"].release()

        self.show_final_stats()