python – 使用concurrent.futures一次消耗许多出列的消息
发布时间:2020-12-16 22:41:16 所属栏目:Python 来源:网络整理
导读:我正在使用来自RabbitMQ频道的消息,我希望我一次可以消耗n个元素.我想我可以使用ProcessPoolExecutor(或ThreadPoolExecutor). 我只是想知道是否可以知道池中是否有免费执行程序. 这就是我想写的: executor = futures.ProcessPoolExecutor(max_workers=5)run
我正在使用来自RabbitMQ频道的消息,我希望我一次可以消耗n个元素.我想我可以使用ProcessPoolExecutor(或ThreadPoolExecutor). 这就是我想写的:
我需要编写函数block_until_a_free_worker. 在替代方案中,我可以使用任何阻塞executor.submit选项(如果可用). 我尝试了一种不同的方法,并在完成后改变期货清单.
这似乎不是解决方案. 我可以设置future.add_done_callback,并可能计算正在运行的实例… 任何提示或想法? 最佳答案
我给了类似的答案here.
信号量用于限制对一组工作者的资源访问.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |