【问题标题】:Can a Daemon process fork child processes in python?守护进程可以在 python 中派生子进程吗?
【发布时间】:2014-05-14 22:53:20
【问题描述】:

我有一个持续运行的守护进程,它是我使用 runit 包创建的。我希望守护进程监听一个表并根据表的列执行任务,该列说明它需要执行什么任务。

EG: table 'A' has column job_type.

我正在考虑在每次执行新任务时从该守护进程中派生子进程(基于插入到守护进程侦听的表 A 中的新行)。

多处理模块说我不能或不应该从守护进程派生子进程,就好像它死了一样,子进程是孤立的。

什么是实现守护进程侦听表的好方法,基于列值,分叉子进程(彼此独立)执行任务并返回守护进程并终止。

如果子进程正在访问共享数据并对其进行修改,我需要使用一些锁定机制..

【问题讨论】:

    标签: python multithreading multiprocessing daemon python-daemon


    【解决方案1】:

    我假设您拥有的守护进程也是从一个名为多进程且 daemon=true 的 python 脚本生成的。 在这种情况下,守护进程正在运行意味着您的创建者进程仍在运行,因此您可以通过管道向它发送一条消息来为您生成一个新进程。如果您的守护进程需要与之通信,请使用套接字或您选择的任何 ipc 方法。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-10-15
      • 1970-01-01
      • 1970-01-01
      • 2019-08-03
      • 1970-01-01
      相关资源
      最近更新 更多