0

任何基本信息将不胜感激。

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

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

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

4

1 回答 1

4

您需要使用多处理模块。

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

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

于 2013-08-11T03:28:17.267 回答