2017-05-13 167 views
0

我想使用线程池来加速进程。虽然编译没有错误,但是不显示'输入calc'。我的代码是否正确?Python线程池

此外,如何清除壳牌的屏幕。我尝试了从网络搜索的方法,但它们不起作用。

此外,我发现以下内容。为什么?

打印X,ARGS,kwargs //错误

打印(X,ARGS,kwargs)//正确

非常感谢你。

import numpy as np 
from multiprocessing import Pool, TimeoutError 
import time 

def rand(): 
    return np.random.normal(0, 1, 1) 

class myClass: 
    def __init__(self, a = 6, b = 6.5): 
     self.a = a 
     self.b = b 
     self.pool = Pool(processes=4) 

    def calc(self, i, j): 
     print('entering calc') 
     return self.a**i + self.b**j 

    def compute(self, n): 
     result = [self.pool.apply_async(self.calc, (rand(), rand())) for k in range(n)] 
     return result 

A = myClass() 
r = A.compute(10) 

回答

0

的原因错误最有可能是因为在Python的更高版本(即Python 3.x都有)打印报表需要括号