Skip to content

Commit 82ee379

Browse files
author
Nathan Lee
committed
Small refactor for repeated code
1 parent cff8175 commit 82ee379

2 files changed

Lines changed: 5 additions & 10 deletions

File tree

pyrunner/core/engine.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -171,7 +171,7 @@ def initiate(self, **kwargs):
171171

172172
def _abort_all_workers(self):
173173
for node in self.register.running_nodes.copy():
174-
node.terminate()
174+
node.terminate('Keyboard Interrupt (SIGINT) received. Terminating Worker and exiting.')
175175
self.register.running_nodes.remove(node)
176176
self.register.aborted_nodes.add(node)
177177
self.register.set_children_defaulted(node)

pyrunner/core/node.py

Lines changed: 4 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -146,33 +146,28 @@ def poll(self, wait=False):
146146
retcode = -1
147147
self.cleanup()
148148
elif (time.time() - self._start_time) >= self._timeout:
149-
self._proc.terminate()
149+
retcode = self.terminate('Worker runtime has exceeded the set maximum/timeout of {} seconds.'.format(self._timeout))
150150
running = False
151-
logger = lg.FileLogger(self.logfile)
152-
logger.open(False)
153-
logger.error('Worker runtime has exceeded the set maximum/timeout of {} seconds.'.format(self._timeout))
154-
logger.close()
155-
self.cleanup()
156-
retcode = 906
157151

158152
return retcode if (not running or wait) else None
159153

160-
def terminate(self):
154+
def terminate(self, message='Terminating process'):
161155
"""
162156
Immediately terminates the Worker, if running.
163157
"""
164158
if self._proc.is_alive():
165159
self._proc.terminate()
166160
logger = lg.FileLogger(self.logfile)
167161
logger.open(False)
168-
logger._system_("Keyboard Interrupt (SIGINT) received. Terminating Worker and exiting.")
162+
logger._system_(message)
169163
logger.close()
170164
self.cleanup()
171165
return 907
172166

173167
def cleanup(self):
174168
self._proc = None
175169
self._context = None
170+
self._worker_instance = None
176171

177172

178173
# ########################## MISC ########################## #

0 commit comments

Comments
 (0)