我在运行Django,并且创建了在Django运行时并行运行的线程。那些线程有时会运行外部进程,在等待外部输入时阻塞。当Django重新启动时,终止子线程?
当我重新启动Django时,那些在等待外部输入时阻塞的线程有时会在重新启动时持续存在,并且它们还会继续打开端口8080,因此Django无法重新启动。
如果我知道Django何时重新启动,我可以杀死这些线程。我怎么知道Django何时重新启动,以便我可以杀死这些线程(及其产生的)。
从django.utils.autoreload中不明显,其中任何钩子可能会告诉重新启动何时发生。
Django启动时是否有另一种杀死这些线程的方法?
感谢您的阅读。
Brian
谢谢亚历克斯。自此我决定为此启动一个全新的非Django守护进程,因为它解决了一整套复杂性问题。我恐怕已经失去了尝试你的建议的能力,但我会听取你的意见并将其标记为答案。 ;) – 2009-09-16 04:11:01