Python3.6进程池添加子进程不执行_一次傻屌行为

先说现象:

单进程完美执行,使用进程池添加子进程死活不执行.一会儿就结束进程.

很闹心,单进程能执行,说明最起码我函数逻辑,语法是对的..拍错步骤:

1.核对创建进程池,添加子进程,阻塞主进程的语法:正确,教科书式的!

2.将函数的双参数变成单参数:没有用

3.打开我以前能够运行的多进程程序.没毛病,执行的好好的.

4.换vs2017,没用用.再运行以前的那个多进程程序.你大爷还是你大爷.好好地.

5.去掉函数中的try-except语句块,添加return语句;没用

6.比对以前的多进程程序函数和现有的函数代码.没什么发现.

7.比对以前的环境和现有的环境:以前的没添加数据库,现在的添加了数据库...

8.卧槽,参数!

9.去掉现有的函数的数据库参数

  开始我这么设计的:

def get_book_content(collection):#collection是pymongo模块下的集合变量.可以通过这个变量获取集合里的数据和集合名字

  现在我不传入这个参数,我直接传入集合名称和集合内容列表

10.成功!

原因分析,因该是数据库限制了,同一个库下面只能有一个集合变量.其余的失效.导致函数执行出错,子进程退出.

经验:以后啊!尽量用Python的基础数据结构,

猜你喜欢

转载自www.cnblogs.com/love-DanDan/p/10709789.html
今日推荐