Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/tfs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 2.7 使用多处理时代码挂起_Python 2.7_Multiprocessing_Ipython Parallel - Fatal编程技术网

Python 2.7 使用多处理时代码挂起

Python 2.7 使用多处理时代码挂起,python-2.7,multiprocessing,ipython-parallel,Python 2.7,Multiprocessing,Ipython Parallel,我想在我的计算机上的不同内核上运行一个简单的函数。我的电脑有四个核心 首先,有一个简单的函数: def exp(x): return x**2 现在我想给这个函数四个独立的数字,并使用一个不同的核来应用这个函数,以便并行地进行计算 我试着这样做: import multiprocessing as mp if __name__ == "__main__": check = [1, 5, 6, 8] pool = mp.Pool( mp.cpu_count())

我想在我的计算机上的不同内核上运行一个简单的函数。我的电脑有四个核心

首先,有一个简单的函数:

def exp(x):

    return x**2
现在我想给这个函数四个独立的数字,并使用一个不同的核来应用这个函数,以便并行地进行计算

我试着这样做:

import multiprocessing as mp

if __name__ == "__main__":
    check = [1, 5, 6, 8]
    pool = mp.Pool( mp.cpu_count())
    results = pool.map(exp, check)
但这似乎是执行的,然后它被挂起,所以我不确定我在这里是否正确使用了池

我也试过:

results = [pool.apply_async(cube, args=(x,)) for x in range(1,7)]
output = [p.get() for p in results]
但它又挂在了最后一行

我在ancondas spyder环境中使用ipython,这也是为什么?也许我需要使用ipythons并行

编辑:


我的问题的答案在这里找到,

无法重新编程。对我有用。你用的是什么操作系统?嗯,我用的是Windows7