Kill the timer process if it doesn't properly terminate.

This commit is contained in:
Ben Muthalaly 2025-02-03 02:47:33 -06:00
parent 12f109b1be
commit 9f4cf0a8e1

View file

@ -152,6 +152,11 @@ class TimedProgress:
except BaseException: # lgtm [py/catch-base-exception]
pass
self.p.terminate()
time.sleep(0.1)
# sometimes the timer doesn't terminate properly, then blocks at the join until
# the full time has elapsed. sending a kill tries to avoid that.
if self.p.is_alive():
self.p.kill()
self.p.join()