diff --git a/websockify/websocket.py b/websockify/websocket.py index cfa47ad..f49a562 100644 --- a/websockify/websocket.py +++ b/websockify/websocket.py @@ -1079,6 +1079,16 @@ class WebSocketServer(object): except (self.Terminate, SystemExit, KeyboardInterrupt): self.msg("In exit") + # terminate all child processes + if multiprocessing and not self.run_once: + childs = multiprocessing.active_children() + + for child in childs: + pid = child.pid + if pid != os.getpid(): + self.msg("Terminating child %s" % pid) + child.terminate() + break except Exception: exc = sys.exc_info()[1]