mirror of
https://github.com/django/daphne.git
synced 2025-07-30 00:49:44 +03:00
fixed WorkerGroup's sigterm_handler (#649)
This commit is contained in:
parent
7cd4fb2b42
commit
f2b39c33e6
|
@ -164,11 +164,8 @@ class WorkerGroup(Worker):
|
||||||
self.workers = [Worker(*args, **kwargs) for ii in range(n_threads)]
|
self.workers = [Worker(*args, **kwargs) for ii in range(n_threads)]
|
||||||
|
|
||||||
def sigterm_handler(self, signo, stack_frame):
|
def sigterm_handler(self, signo, stack_frame):
|
||||||
self.termed = True
|
logger.info("Shutdown signal received by WorkerGroup, terminating immediately.")
|
||||||
for wkr in self.workers:
|
sys.exit(0)
|
||||||
wkr.termed = True
|
|
||||||
logger.info("Shutdown signal received while busy, waiting for "
|
|
||||||
"loop termination")
|
|
||||||
|
|
||||||
def ready(self):
|
def ready(self):
|
||||||
super(WorkerGroup, self).ready()
|
super(WorkerGroup, self).ready()
|
||||||
|
@ -182,8 +179,6 @@ class WorkerGroup(Worker):
|
||||||
self.threads = [threading.Thread(target=self.workers[ii].run)
|
self.threads = [threading.Thread(target=self.workers[ii].run)
|
||||||
for ii in range(len(self.workers))]
|
for ii in range(len(self.workers))]
|
||||||
for t in self.threads:
|
for t in self.threads:
|
||||||
|
t.daemon = True
|
||||||
t.start()
|
t.start()
|
||||||
super(WorkerGroup, self).run()
|
super(WorkerGroup, self).run()
|
||||||
# Join threads once completed.
|
|
||||||
for t in self.threads:
|
|
||||||
t.join()
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user