util.monitor mini-refactor

This commit is contained in:
Connectety-T 2020-04-03 14:42:53 +02:00 committed by Mathieu Comandon
parent f5592fc6ff
commit a6040c5910

View file

@ -51,6 +51,10 @@ class ProcessMonitor:
# process names from /proc only contain 15 characters
return {p[0:15] for p in process_list}
@staticmethod
def iterate_all_processes():
return Process(os.getpid()).iter_children()
def iterate_game_processes(self):
for child in self.iterate_all_processes():
if child.state == 'Z':
@ -67,16 +71,9 @@ class ProcessMonitor:
if child.name not in self.unmonitored_processes:
yield child
def iterate_all_processes(self):
return Process(os.getpid()).iter_children()
def is_game_alive(self):
"Returns whether at least one nonexcluded process exists"
for _child in self.iterate_game_processes():
return True
return False
"""Returns whether at least one nonexcluded process exists"""
return next(self.iterate_game_processes(), None) is not None
def are_monitored_processes_alive(self):
for _child in self.iterate_monitored_processes():
return True
return False
return next(self.iterate_monitored_processes(), None) is not None