python-twisted和SIGKILL

raf*_*lak 5 python linux twisted sigkill

我有一个使用扭曲框架的python应用程序。

我利用了扭曲产生的pidfile中存储的值。启动脚本会检查它是否存在,如果pidfile已经存在,则不会生成守护进程。

但是,twist不会在收到SIGKILL信号时删除.pid文件。这使启动器脚本认为守护程序已在运行。

我意识到停止守护程序的正确方法是使用SIGTERM信号,但是问题是启动守护程序的用户注销后,守护程序永远不会收到SIGTERM信号,因此显然被杀死了SIGKILL。这意味着一旦用户注销,他将永远无法再次启动守护程序,因为pidfile仍然存在。

在这种情况下,有什么办法可以使该文件消失?