首页 > 系统相关 >python 循环中 无法释放占用内存

python 循环中 无法释放占用内存

时间:2022-11-30 23:03:22浏览次数:40  
标签:释放 python 占用 gc 内存 无法

问题 python 循环里 无法释放占用内存 即使手动删除 del 对象 再调用gc回收 也无法释放内存 以为你del 只能强引用 的计数器设为-1 但是gc回收 时 会重新检查代码中的引用计数器 但是我的ai处理代码因为在while 循环中 所以导致gc 永远无法释放内存 。导致ai在没计算时还会占用计算时所申请的最大内存
解决: 1. 尝试弱引用 weakref 计算完成 后 del 后gc计数器为0 但是还是无法释放内存
2. python 底层手动申请内存 pyObject_GC_New() 解决还是
3. 用 python multiprocessing 的线程 解决内存占用 每次循环取到任务 启动一个新的线程, 因为线程 计算完成会自动释放内存 。
目前ai 只有在取到任务时 才会占用内存 计算完成立即释放只会保存180MB的主进程(循环获取任务)
simpleITK render 多线程程无法传递 ???报无法加载的错误

标签:释放,python,占用,gc,内存,无法
From: https://www.cnblogs.com/luofeel/p/16940092.html

相关文章

  • Python读取csv文件
    1.CSV逗号分隔值,英文全称Comma-SeparatedValues,缩写CSV,有时也称字符分隔值,因为字符分隔值也可以不是逗号,CSV文件以纯文本形式存储表格数据(数字和文本).纯文本意味......
  • python列表处理操作
    1、总结增、删、改、查list=[1,"xiaoming","atao","quangege",10,"a"]#列表增list.append("10")#列表尾部增加list.insert(1,"xxxx")#指定位置增加print(lis......
  • 【NLP开发】Python实现聊天机器人
    文章目录​​1、简介​​​​2、ELIZA​​​​2.1ElizaTest(java)​​​​2.2wadetb/eliza(python)​​​​2.3eliza-py(python)​​​​2.4nltk.chat.eliza(python)​​​​2.......
  • Python 对称加密的使用
    对称加密概述:对称加密就是加密和解密使用同一个密钥;就好比.我要给你邮寄一个箱子.上面怼上锁.提前我把钥匙给了你一把,我一把.那么我在邮寄之前就可以把箱子锁上.然......
  • n1_python数据分析
    1.Python语言及其特征优点:代码编写效率高;程序代码可读性强;可扩展性强;属于解释型语言,支持动态数据类型。缺点:①属于解释型语言,代码执行速度较慢;②在移动终端类应用......
  • 进入python的世界_day42_前端——何为前端、HTTP、HTML、head和body以及常用标签
    一、前端1.何为前端​ 与用户打交道的操作界面即为前端,一般都是做了美化的2.前端核心基础HTML>>>:网页的骨架CSS>>>:网页的样式JS>>>:网页的动态(比如说滑动......
  • Python threading Thread多线程的使用方法
    PythonthreadingThread多线程的使用方法目录​​PythonthreadingThread多线程的使用方法​​​​1.使用Threading模块创建线程​​​​2.Thread线程同步​​​​3.使用......
  • python用ARIMA模型预测CO2浓度时间序列实现|附代码数据
    全文下载链接:http://tecdat.cn/?p=20424时间序列为预测未来数据提供了方法。根据先前的值,时间序列可用于预测经济,天气的趋势。时间序列数据的特定属性意味着通常需要专门......
  • 极客编程python入门-生成器
    generator通过列表生成式,我们可以直接创建一个列表。但是,受到内存限制,列表容量肯定是有限的。在Python中,这种一边循环一边计算的机制,称为生成器:generator。只要把一个列表生......
  • python之路39 前端开始 各种标签
    前端前夕前端三剑客HTML网页的骨架CSS网页的样式JavaScript网页的动态1.编写服务端2.浏览器充当客户端访问服务端3.浏览器无法......