windows – Python 3.2 Multiprocessing.Process没有运行目标函数

我有一个问题,我无法弄清楚问题是什么.嵌入式代码(3.2文档中最简单的示例代码,只是为了尝试调试)将不会运行目标函数.进程完成,程序导入并正常运行,正确安装
Python 3.2并将目录添加到Path环境变量中.我正在使用f5从IDLE运行程序,并且每个其他位代码都能正常运行,但是目标函数’f’中的代码(在这种情况下)SIMPLY不运行.你可以理解,这是令人沮丧的.此代码不会打印,目标函数(以及任何函数)中的每个测试打印都不会执行;它被简单地跳过了.

#!/usr/bin/env python
from multiprocessing import Process

def f(name):
    print('hello', name)

if __name__ == '__main__':
    p = Process(target=f, args=('bob',))
    p.start()

有什么想法吗?我在Windows 7系统上运行Python 3.2,并且使用Python 2.7在我的系统上成功运行多处理(尽管我的项目需要我在3.2中开发).很抱歉这个简单的问题,我认为必须是一些路径问题,但我只是不确定我可能需要做些什么才能使这项工作无法找到谷歌的任何解决方案,因为Python肯定能识别这个包(和当它拼写错误时失败);它只是表现不正常.感谢您的帮助/建议!!

最佳答案 多处理和IDLE无法很好地协同工作.确保它在IDLE之外运行,如果是这样,你就是好的.

我自己不使用IDE,所以我没有其他人可以提供给你,但令人惊讶的是简单的打印可以用于调试.

点赞