我不能在IPython中使用多处理

我不能在IPython中使用多处理,python,multiprocessing,arcgis,Python,Multiprocessing,Arcgis,去年,我编写了一个简单的代码来拼接数百个光栅数据。进展顺利。 上周,我拿起这段代码做同样的工作,但它不起作用。 我复制了官方演示: from multiprocessing import Process def f(name): print 'hello', name if __name__ == '__main__': p = Process(target=f, args=('bob',)) p.start() p.join() 但是没有反馈,没有报告错误

去年,我编写了一个简单的代码来拼接数百个光栅数据。进展顺利。 上周,我拿起这段代码做同样的工作,但它不起作用。 我复制了官方演示:

from multiprocessing import Process

def f(name):
    print 'hello', name

if __name__ == '__main__':
    p = Process(target=f, args=('bob',))
    p.start()
    p.join()
但是没有反馈,没有报告错误。如果我将多处理模块切换到线程模块,它将运行良好。 然后我发现演示可以在Python控制台中运行,但不能在IPython控制台中运行。 另外,我使用WinPython-64位,并尝试了2.7和3.5版本,两者都有相同的问题。我不能在ArcGIS python控制台中使用多处理模块。
谢谢

我对你的问题不太理解

但是,如果你想使用线程,你可以试试这个

from multiprocessing.dummy import Pool as ThreadPool
def f(name):
    print 'hello', name

if __name__ == '__main__':
    pool = ThreadPool(4)           # 4 is number of your CPU core, 4 times faster
    names = ['bob','jack','newt']  #prepare your name list 
    results = pool.map(f, names)
    pool.close()  
    pool.join() 

实际上,线程工作正常,但不是多处理。我已经尝试了你的代码,它运行得很好。为什么我不能运行多处理?@ZheYang,也许可以尝试卸载和安装,没有什么不能用这种方式解决的。如果有,请重试。为什么我不能以这种方式使用流程?