python - 如何在python中对分配给每个进程并行的每个队列进行操作?
问题描述
假设有四个核心 cpu 处理器,我正在运行所有四个进程。我为每个进程分配了一个队列。但是我如何同时运行所有队列。
class ParentProcess(multiprocessing.Process):
def __init__(self, queue):
multiprocessing.Process.__init__(self)
self.queue = queue
def run(self):
while not self.queue.empty():
data = self.queue.get()
print(data)
def main():
numProcs = 4
queueList = [multiprocessing.Queue() for i in range(numProcs)]
for index, queue in enumerate(queueList):
deals = [1,2,3]
for deal in deals:
queue.put(deal)
p = ParentProcess(queue)
p.start()
p.join()
在这里,每个进程一个接一个地运行。但是,我需要并行运行这个并并行处理队列的每个元素。
解决方案
推荐阅读
- deep-learning - Mesh-R-CNN 数据与 Colab 和 Pytorch3D
- bash - Shell 脚本从命令行工作,但不能从 cron
- azure-logic-apps - 为什么不能在 Azure 逻辑应用中识别服务器?
- html - 为什么 gitbash 中的启动文件打开命令提示符而不是文件?
- mysql - 使用mysql解析csv中包含逗号的字符串?(或者也许是熊猫?)
- php - 如何在 Laravel Eloquent 中更新(HasMany 关系)
- sh - 为什么 srilm 的 ngram-merge 输入错误?
- scala - Scala:“模糊的隐含值”,但未找到正确的值
- python - Python - Mac - PyCharm 中的 Pygame
- reactjs - 如何使用 .net 核心项目将 npm 包添加到 Visual Studio 2019 中?