【发布时间】:2021-11-16 23:07:57
【问题描述】:
我想实现类似 Erlang 的消息传递,除非已经存在。 这个想法是创建多进程应用程序(我正在使用 Ray)
我可以想象如何发送/接收:
@ray.remote
class Module:
def recv(self, folder, msg ) :
if folder not in self.inbox : self.inbox[folder] = deque()
self.inbox[folder].push(msg)
def send(self, mod, folder, msg): mod.recv(folder,msg)
你调用 .send() 远程调用目标模块的 .recv() 方法
我的问题是我不知道如何对消息进行 REACT 的内部事件循环。
它也必须是轻量级的,因为它在每个进程中运行。
一个想法是带睡眠的while循环,但它似乎效率低下!
可能,当消息到达时,如果消息匹配,它必须触发一些已注册的 FILTER-HOOK ?所以可能不需要事件循环,而只是由 FILTER 触发的例程!!!
【问题讨论】:
标签: python message communication msgbox