多处理Windows:如何防止重新运行?

时间:2017-05-14 11:55:42

标签: windows python-3.x multiprocessing spyder

我正在使用这个多处理脚本:

测试类

from multiprocessing.pool import Pool

class Test:

    def __init__(self):
        print("init")

    def getData(self, x, ID):
        return x + str(ID)

    def process(self):
        pool = Pool(processes=10)
        IDList = range(10)
        data = []
        for ID in IDList:
            async_result = pool.apply_async(self.getData, ("wordl", ID))
            data.append(async_result.get())
        return data

主脚本

from TestClass import Test

def main():
    test = Test()
    test.process()

if __name__ == '__main__':
    main()

当我运行此文件时,它会一直运行。我发现Windows是问题所在:

  

刚刚在Win 7 anaconda pyscripter上找到了这个问题   2.6.0 Pyscripter生成一个.pyc文件,这是每次运行程序时重新运行的文件,只是删除它并且它对我来说很好(source

有没有办法向此脚本添加代码,以便它可以在Windows上运行?我尝试使用sys.dont_write_bytecode = True,但这不起作用。

0 个答案:

没有答案