Python 3.x 在广播和消费模式中,进程间通信有哪些可用选项

Python 3.x 在广播和消费模式中,进程间通信有哪些可用选项,python-3.x,ipc,Python 3.x,Ipc,将我的主脚本视为一个循环,不断地广播发生的各种事件。例如: FileChange: File at address XXX has changed. FileDeleted: File at address XXX has been deleted. ScreenSaver: Screen saver named YYY got activated. ... 我打算做的是让我现在(以及以后)添加其他应用程序,听听主应用程序正在播放什么,如果它与之相关(比如处理FileChange事件的脚本),

将我的主脚本视为一个循环,不断地广播发生的各种事件。例如:

FileChange: File at address XXX has changed.
FileDeleted: File at address XXX has been deleted.
ScreenSaver: Screen saver named YYY got activated.
...
我打算做的是让我现在(以及以后)添加其他应用程序,听听主应用程序正在播放什么,如果它与之相关(比如处理
FileChange
事件的脚本),它们会收到消息并自行处理


对于实现这种进程间通信模型,我有哪些选择?

如果您使用线程构造应用程序,您可以使用python
队列
库来实现这一点——它是一个支持多生产者和消费者的类。我经常使用它来构建我的应用程序,以便在不同的侦听器之间传播事件

如果您想分离不同的流程,您可以从中进行选择


在您的例子中,a可能是一种简单的可能性,而不需要使用困难的框架(您甚至可以编写shell程序来访问它)。同时,它似乎也可以在Windows下工作()。您的服务可以使用简单的ASCII协议在套接字上发布事件,如

是否可以使用Redis发布/订阅?Redis很有帮助。谢谢