Python多进程使用队列共享数据协同判断素数

2019-12-13 15:59:55 浏览数 (3)

感谢江西师范大学李雪斌老师提供素材和第一版本代码。

问题描述:

创建两个队列,qIn用来存储指定范围内的整数,qOut用来存放该范围内的所有素数。创建多个进程,每个进程依次从qIn队列中获取整数,并判断是否为素数,如果是素数则存入qOut。

技术要点:

1)使用Python标准库multiprocessing创建和管理进程;

2)使用multiprocessing.Manager对象提供的Queue类创建队列,不要使用multiprocessing提供的Queue,否则当问题规模大到一定程度时可能会发生死锁。

参考代码(该程序需要在cmd命令提示符环境运行):

0 人点赞