Python线程池

时间:2017-05-13 04:25:11

标签: python multithreading

我想使用线程池来加速进程。虽然编译中没有错误,但是进入计算结果。没有显示。我的代码是否正确?

而且,如何清除Shell的屏幕。我尝试了从网上搜索过的方法,但它们不起作用。

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

print x,args,kwargs //错误

print(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)

1 个答案:

答案 0 :(得分:0)

错误的原因很可能是因为在更高版本的python(即Python 3.x)中,print语句需要括号