Python3.6进程池添加子进程不执行_一次傻屌行为
先说现象:
单进程完美执行,使用进程池添加子进程死活不执行.一会儿就结束进程.
很闹心,单进程能执行,说明最起码我函数逻辑,语法是对的..拍错步骤:
1.核对创建进程池,添加子进程,阻塞主进程的语法:正确,教科书式的!
2.将函数的双参数变成单参数:没有用
3.打开我以前能够运行的多进程程序.没毛病,执行的好好的.
4.换vs2017,没用用.再运行以前的那个多进程程序.你大爷还是你大爷.好好地.
5.去掉函数中的try-except语句块,添加return语句;没用
6.比对以前的多进程程序函数和现有的函数代码.没什么发现.
7.比对以前的环境和现有的环境:以前的没添加数据库,现在的添加了数据库...
8.卧槽,参数!
9.去掉现有的函数的数据库参数
开始我这么设计的:
1 | def get_book_content(collection): #collection是pymongo模块下的集合变量.可以通过这个变量获取集合里的数据和集合名字 |
现在我不传入这个参数,我直接传入集合名称和集合内容列表
10.成功!
原因分析,因该是数据库限制了,同一个库下面只能有一个集合变量.其余的失效.导致函数执行出错,子进程退出.
经验:以后啊!尽量用Python的基础数据结构,
==============2020年10月30日================
调用子进程的时候,最好是位于父进程中,且需要使用if __name__ == __main__:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?