【发布时间】:2013-05-27 07:26:51
【问题描述】:
我正在寻找一个 Python 类(最好是标准语言的一部分,而不是第 3 方库)来管理异步“广播风格”消息传递。
我将有一个线程将消息放入队列('putMessageOnQueue' 方法不得阻塞),然后有多个其他线程都将等待消息,大概调用了一些阻塞'waitForMessage' 函数。当一条消息被放入队列时,我希望每个等待的线程都获得自己的消息副本。
我查看了内置的Queue 类,但我认为这不合适,因为使用消息似乎涉及将它们从队列中删除,因此只有 1 个客户端线程会看到每个消息。
这似乎应该是一个常见的用例,有人可以推荐一个解决方案吗?
【问题讨论】:
-
我相信您可以构建自己的类来跟踪哪个线程收到了哪个消息,而不会出现很多问题。
标签: python multithreading queue message-queue