【发布时间】:2016-02-24 17:17:53
【问题描述】:
我正在用 Python 创建一个程序,用于监听各种用户交互并记录它们。我有这些要求/限制:
- 我需要一个单独的进程,每小时将这些日志发送到远程数据库
- 我无法在当前进程中执行此操作,因为它会阻塞 UI。
- 如果主进程停止,后台进程也应该停止。
我一直在阅读有关subprocess 的信息,但我似乎找不到任何关于如何同时停止两者的信息。如果有人知道一些 Erlang/Elixir,我需要相当于 spawn_link。
谢谢!
【问题讨论】:
-
我知道代码很简单,但是您能否向我们展示一个关于如何生成子进程的最小工作示例?
-
操作系统?在 Windows 上,您可以使用
win32process.EnumProcesses获取系统上运行的 PID 列表。您的子程序可以接受父 PID 作为命令行参数(或查找其父 PID 本身),然后有一个if parentpid not in EnumProcesses(): sys.exit(0)或类似的东西。
标签: python subprocess