【发布时间】:2015-02-15 20:21:16
【问题描述】:
我正在使用 Intel 的 Pentium(R)Dual-core E5700 @3.00GHz 和 2GB 内存。
我正在尝试学习 Python 的 multiprocessing 模块。我写了一个简单的程序来执行加法,但它不起作用;我只是获得核心 2 的数量。我的电脑或代码有问题吗?
import multiprocessing
print "number of core ",multiprocessing.cpu_count()
def calc(a,b):
c= a+b
return c
if __name__ =='__main__':
p1 = multiprocessing.Process(target=calc,args=(3,5) )
p1.start()
p2 = multiprocessing.Process(target=calc,args=(2,2) )
p2.start()
p1.join()
p2.join()
【问题讨论】:
-
将
return c更改为print c -
为什么将返回更改为打印,当我将其称为 calc(2,3) 我得到 5 时,它的功能完美无缺
-
如果你有一个双核机器,那么你的 CPU 数量是两个。是什么让你认为这是错误的?你期待它是什么?
-
k..那么你怎么知道你的prgm执行了这个函数?你也得到
number of core 2。那么你的程序面临的问题是什么? -
从您的问题中不清楚程序的哪个部分不起作用。你看到了什么行为?您希望看到什么行为?
标签: python multiprocessing python-multiprocessing