在Mac OS上的python中进行多处理

时间:2013-08-11 03:02:05

标签: python macos multiprocessing

非常感谢任何基本信息。

我几乎完成了我的项目,我现在要做的就是运行我的代码来获取我的数据。但是,它需要很长时间,并且有人建议我使我的代码(python)可用于多进程。但是,我对如何做到这一点毫无头绪,并且在运行方式上遇到了很多麻烦。我使用的是Mac OS X 10.8.2。我知道我需要一个信号量。

我查了多处理模块和Thread模块,虽然我无法理解大部分内容。 Process()或Manager()函数与此有关吗?

最后,我有16个处理器可用于此。

1 个答案:

答案 0 :(得分:2)

您需要使用多处理模块。

两个模块都支持并发,但只有多处理才能实现真正的并行性。由于Python的全局解释器锁,多个线程无法同时执行。

保持所有16个处理器繁忙是因为编程难度增加,因为单独的进程不会在共享内存空间中执行,因此如果生成的进程需要与其父进程共享数据,则需要序列化它。