Python程序之间的通信

5 投票
4 回答
4588 浏览
提问于 2025-04-16 02:01

我有一个在Linux上运行的Python程序,它是作为一个守护进程在后台工作的。

我该如何从另一个Python程序给这个守护进程发送一个信号呢?

4 个回答

2

你有没有试着看看关于Python中进程间通信的文档?这里有个链接:

http://docs.python.org/library/ipc.html

3

如果你需要比简单的信号更复杂的东西,可以考虑使用像 PYRO 这样的RPC库。使用这个的好处是,即使你需要把你的程序放到不同的服务器上,它也能正常工作。

或者,如果你主要是针对Linux系统的话,可以看看 DBUS。它有一个Python库,现在在Windows上也得到了支持。

4

使用 os.kill 来发送信号。信号的定义在 signal 模块里。你只需要以某种方式获取到守护进程的进程ID(pid)。

还有一点要注意,你可以使用 signal 模块来注册信号处理器。

撰写回答