3
0
Fork 0
mirror of https://github.com/YosysHQ/sby.git synced 2025-04-05 22:14:08 +00:00

Use monotonic clock for timeouts

This commit is contained in:
Jannis Harder 2022-04-25 15:43:59 +02:00
parent 0df73ea666
commit d1c04f79d6

View file

@ -22,7 +22,7 @@ if os.name == "posix":
import subprocess
from shutil import copyfile, copytree, rmtree
from select import select
from time import time, localtime, sleep, strftime
from time import monotonic, localtime, sleep, strftime
from sby_design import SbyProperty, SbyModule, design_hierarchy
all_procs_running = []
@ -349,7 +349,7 @@ class SbyTask(SbyConfig):
self.procs_running = []
self.procs_pending = []
self.start_clock_time = time()
self.start_clock_time = monotonic()
if os.name == "posix":
ru = resource.getrusage(resource.RUSAGE_CHILDREN)
@ -392,7 +392,7 @@ class SbyTask(SbyConfig):
proc.poll()
if self.opt_timeout is not None:
total_clock_time = int(time() - self.start_clock_time)
total_clock_time = int(monotonic() - self.start_clock_time)
if total_clock_time > self.opt_timeout:
self.log(f"Reached TIMEOUT ({self.opt_timeout} seconds). Terminating all subprocesses.")
self.status = "TIMEOUT"
@ -734,7 +734,7 @@ class SbyTask(SbyConfig):
self.taskloop()
total_clock_time = int(time() - self.start_clock_time)
total_clock_time = int(monotonic() - self.start_clock_time)
if os.name == "posix":
ru = resource.getrusage(resource.RUSAGE_CHILDREN)