首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在广播和消费模式中,进程间通信有哪些可用选项

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

Stack Overflow用户
提问于 2019-09-22 04:05:01
回答 1查看 118关注 0票数 0

将我的主脚本看作是一个不断广播各种事件发生的循环。例如:

代码语言:javascript
复制
FileChange: File at address XXX has changed.
FileDeleted: File at address XXX has been deleted.
ScreenSaver: Screen saver named YYY got activated.
...

我打算做的是让我现在(以及以后)添加的其他应用程序,监听主要应用程序正在广播的内容,如果它与之相关(比如处理FileChange事件的脚本),它们会收到消息并进行自己的处理。

要实现此进程间通信模型,我有哪些选择?

EN

回答 1

Stack Overflow用户

发布于 2019-09-22 15:23:28

如果您使用线程构建应用程序,则可以为该https://docs.python.org/3/library/queue.html使用python queue库-它是一个支持多个生产者和消费者的类。我经常使用它来构建我的应用程序,以便在不同的侦听器之间传播事件。

如果你想分离不同的进程,你可以从Recommended Python publish/subscribe/dispatch module?中选择一些东西

在您的例子中,unix domain socket可以是一种简单的可能性,而不需要使用复杂的框架(您甚至可以编写外壳程序来访问它)。同时,它似乎也能在Windows下工作(AF_UNIX equivalent for Windows)。您的服务可以在套接字上使用简单的ASCII协议(如<EVENT>:<PATH> )发布事件。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58043697

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档