“Windows上的Python 2.7”;断言主“U名称不在sys.modules中,主“U名称”;对于所有多处理示例
有以下简单代码:“Windows上的Python 2.7”;断言主“U名称不在sys.modules中,主“U名称”;对于所有多处理示例,python,windows,python-2.7,multiprocessing,main,Python,Windows,Python 2.7,Multiprocessing,Main,有以下简单代码: from multiprocessing import Process, freeze_support def foo(): print 'hello' if __name__ == '__main__': freeze_support() p = Process(target=foo) p.start() 它在Linux或使用Python 3.3的Windows上运行良好,但在使用Python 2.7的Windows上运行失败 Trace
from multiprocessing import Process, freeze_support
def foo():
print 'hello'
if __name__ == '__main__':
freeze_support()
p = Process(target=foo)
p.start()
它在Linux或使用Python 3.3的Windows上运行良好,但在使用Python 2.7的Windows上运行失败
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "c:\Python27\lib\multiprocessing\forking.py", line 346, in main
prepare(preparation_data)
File "c:\Python27\lib\multiprocessing\forking.py", line 454, in prepare
assert main_name not in sys.modules, main_name
AssertionError: thread
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
文件“c:\Python27\lib\multiprocessing\forking.py”,第346行,在main中
准备(准备数据)
文件“c:\Python27\lib\multiprocessing\forking.py”,第454行,在prepare中
断言主\u名称不在sys.modules中,主\u名称
断言错误:线程
一般来说,我尝试的所有多处理示例在该设置上都失败了。为什么?这是一个已知的错误:
不确定这是否会被移植到2.7.X版。@techtonik谢谢你的提示。这是否意味着@Zelong it available版本中的
多处理
模块不可用,只是在这些情况下可能无法正常工作。