使用python,本地脚本调试时,子进程创建和执行都正常
打包成exe再执行,发现不停在创建子进程,但是子进程内容并未执行
解决办法:
multiprocessing.freeze_support()#在main后面第一行增加该语句
代码如下
import multiprocessing
if __name__=='__main__':
try:
multiprocessing.freeze_support()#在main后面第一行增加该语句
write_wx("main process:" +str(os.getpid()),'')#我自己写的写log方法
except Exception as e:
write_wx('main error:'+str(e),'')#我自己写的写log方法
process=[]
try:
for n in range(0,len(deviceSerial_list)):#遍历设备
process.append(multiprocessing.Process(target=testcase,args=(n,deviceSerial_list[n])))#创建子进程
except Exception as e:
write_wx('add process error:'+str(e),'')