感谢江西师范大学李雪斌老师提供素材和第一版本代码。
问题描述:
创建两个队列,qIn用来存储指定范围内的整数,qOut用来存放该范围内的所有素数。创建多个进程,每个进程依次从qIn队列中获取整数,并判断是否为素数,如果是素数则存入qOut。
技术要点:
1)使用Python标准库multiprocessing创建和管理进程;
2)使用multiprocessing.Manager对象提供的Queue类创建队列,不要使用multiprocessing提供的Queue,否则当问题规模大到一定程度时可能会发生死锁。
参考代码(该程序需要在cmd命令提示符环境运行):