当我运行使用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)