在 windows 7 上的 python 2.7 版本中,是否有适用于 运行 多处理的解释器?

Is there any interpreter that works well for running multiprocessing in python 2.7 version on windows 7?

我正在尝试 运行 一段 code.This 代码是关于 multiprocessing.It 在命令提示符下工作正常并且当我尝试时它也会生成一些 output.But 运行 pyscripter 上的这段代码只是说脚本 运行 没问题,它不会生成任何输出,甚至不会显示任何错误 message.It 甚至 crashes.It 都不会如果有人可以帮助我找到合适的解释器,这个多处理工作正常,那将非常有帮助。 这是一段代码:

    from multiprocessing import Process
    def wait():
        print "wait"
        clean()
   def clean():
        print "clean"
   def main():
        p=Process(target=wait)
        p.start()
        p.join()
   if _name_=='_main_':
        main()

对我来说,Windows 7 上的 multiprocessing 正常解释器工作得很好。 (您的 IDE 可能不喜欢多处理。)

你只需要做

if __name__=='__main__':
    main()

每个有 2 个下划线 (__) 而不是 1 个 (_)。

此外 - 如果您没有实际理由不使用它,在大多数情况下 multiprocessing.Poolmultiprocessing.Process 更容易使用。看看https://docs.python.org/2/library/multiprocessing.html#module-multiprocessing.pool

带有池的实现是

import multiprocessing
def wait():
    print "wait"
    clean()
def clean():
    print "clean"
def main():
    p=multiprocessing.Pool()
    p.apply_async(wait)
    p.close()
    p.join()
if __name__=='__main__':
    main()

但是使用哪种 Pool 方法在很大程度上取决于您实际想要做什么。