python多处理消耗100%的所有核心

时间:2012-12-13 12:10:04

标签: python multiprocessing

当我运行使用multiprocessing的python代码时,它正在使用所有8个内核而我的系统正在挂起。我添加了以下行,但它没有帮助。

po = multiprocessing.Pool(processes=4)

递归代码如下:

def func(a,i):
   if (a>i):
      func(a-1,i)
      func(a-5,i)
   else print a

现在,上述2个递归调用可以放入线程中,因为它们彼此独立。

以下是代码。

import multiprocessing
po = multiprocessing.Pool(processes=2)

p=bin(47)
q=bin(59)


def func(r,i):
   if( p[i]==r[i])  
    po = multiprocessing.Process(target=func, args=(2*r, i+1))
    po.start()
    po = multiprocessing.Process(target=func, args=((2*r)+1, i+1))
    po.start()

func(1,1)

0 个答案:

没有答案