python内存回收的问题

python内存回收的问题

python实际上,对于占用很大内存的对象,并不会马上释放。

举例,a=range(10000*10000),会发现内存飙升一个多G,del a 或者a=[]都不能将内存降下来。。

del 可以删除多个变量,del a,b,c,d
办法:
import gc (garbage collector)
del a
gc.collect()

马上内存就释放了。

 

 

在IPython中用run运行程序时,都是在独立的运行环境中运行,结束之后才将程序运行环境中的结果复制到IPython环境中,因此不会有变量被重复调用的问题。

如果你是指在自己的程序中想删除所有全局变量的话,可以自己编写一个clear函数,通过globals()获取全局变量然后将其中不需要的内容删除,例如下面的程序保留函数,类,模块,删除所有其它全局变量:

 

def clear():

    for key, value in globals().items():

        if callable(value) or value.__class__.__name__ == “module”:

            continue

        del globals()[key]

不过程序中应该避免这种对全局变量的依赖。你也可以在IPython下用此函数清空全局变量。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/119665.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 【PMP】项目浮动的三种时间「建议收藏」

    【PMP】项目浮动的三种时间「建议收藏」自由浮动时间不影响后续工作最早可以开始时间的前提下,这项工作可以拖延的时间叫做自由浮动时间。总浮动时间不影响项目总工期的情况下活动可以拖延的总时间。项目浮动时间在已经排好的总工期的基础上,领导或者甲方

    2022年8月1日
    2
  • Win10安装Matlab R2017a技术指导

    Win10安装Matlab R2017a技术指导下面带来win1064-bitMatlab2017a的安装过程,亲测,可用。(一)所需文件及下载地址1.Matlab-R2017a-ISO镜像文件链接:https://pan.baidu.com/s/1pNhyKGF密码:cgt22.破解文件链接:https://pan.baidu.com/s/1nwWDgKh密码:4fwa链接:https://pan.ba

    2022年5月6日
    48
  • 送你一张图,教你如何docker卸载redis,请收好「建议收藏」

    送你一张图,教你如何docker卸载redis,请收好「建议收藏」一张图,告诉你怎么操作。嘿嘿❤如果文章对您有所帮助,就在文章的右上角或者文章的末尾点个赞吧!(づ ̄3 ̄)づ❤如果喜欢大白兔分享的文章,就给大白兔点个关注吧!(๑′ᴗ‵๑)づ╭❤~❤对文章有任何问题欢迎小伙伴们下方留言或者入群探讨【群号:708072830】❤鉴于个人经验有限,所有观点及技术研点,如有异议,请直接回复讨论(请勿发表攻击言)…

    2022年9月7日
    0
  • navicat premium 15激活码 mac【2021免费激活】[通俗易懂]

    (navicat premium 15激活码 mac)这是一篇idea技术相关文章,由全栈君为大家提供,主要知识点是关于2021JetBrains全家桶永久激活码的内容https://javaforall.net/100143.htmlIntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,上面是详细链接哦~747EFQ8BIF-eyJsaWNlb…

    2022年3月31日
    85
  • mysql行转列、列转行

    mysql行转列、列转行mysql行转列、列转行

    2022年6月14日
    25
  • 排序二叉树-删除节点

    排序二叉树-删除节点前面(https://blog.csdn.net/jsjsjs1789/article/details/106772632),我们已经了解了什么是排序二叉树以及排序二叉树的遍历和添加元素,现在我们一起来看一下,排序二叉树是如何删除元素的。packagexmht.datastructuresandalgorithms.datastructure.binarysortTree;/***@authorshengjk1*@date2020/6/15*/publicclassB

    2022年7月25日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号