gpt4 book ai didi

具有不相关进程的 Python 多处理

转载 作者:行者123 更新时间:2023-12-03 11:53:27 25 4
gpt4 key购买 nike

我有许多单独产生的进程,而不是从 parent 到 child 。进程需要向特定进程发送消息。接收进程地址(pid)可以存储在数据库中,但进程不能共享内存中的任何公共(public)变量。

我找不到任何方法来使用 pythons 多进程包来实现这一点,现在正在研究基于套接字的服务器,但是这个问题仍然让我很好奇这种架构是否可以通过多处理来实现 - 优点是可以轻松通过 pickable对象。

最佳答案

The processes need to send a message to specific processes. The receiving processes address (pid) can be stored in a database, but the processes cannot share any common variables in memory.



数据库?为什么?每个人都为此使用文件,因为文件便宜、可用,而且您只存储一个整数值。

还。由于您要使用文件,因此您有更多有趣的选择。
  • 每个进程都将消息写入命名管道。接收进程从命名管道中取出请求。
  • 每个进程都将消息写入文件。一个简单的锁确保一次只有一个进程可以访问文件,从而确保序列化。接收进程从此文件中读取。
  • 每个进程都使用 HTTP 向接收进程发出 RESTful 请求。接收进程使用精简的 HTTP 服务器框架来处理请求。
  • 每个进程都使用消息队列将消息排入队列。接收进程将消息出列。队列是一个文件。

  • 等等。是的,还有更多。但他们开始变得特定于操作系统。

    关于具有不相关进程的 Python 多处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4873229/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com