在多处理中,正常关闭,关闭数据库连接,打开文件,停止SIGTERM上的工作

时间:2012-04-25 19:27:00

标签: python database multiprocessing signals

我有一个守护程序进程使用multiprocessing生成子进程来做一些工作,每个子进程打开自己的连接句柄做DB(在我的情况下是postgres)。进程的作业通过Queue传递,如果队列为空,进程会调用sleep一段时间,并重新检查队列

如何在SIGTERM上实现“正常关机”?每个子进程应尽可能快地终止,关闭/终止当前游标/事务和数据库连接,以及打开文件。

1 个答案:

答案 0 :(得分:4)

存储所有打开的文件/连接/等。在全局结构中,关闭它们并退出SIGTERM处理程序。