博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python 内存管理
阅读量:6786 次
发布时间:2019-06-26

本文共 600 字,大约阅读时间需要 2 分钟。

python的内存管理机制:引用计数器机制+垃圾回收机制 #####引用计数器机制: 对象被引用时加1,不被引用时减1,当计数器为0时,该对象会被自动销毁

引用计数加1场景:

  • 对象被创建 p1 = Person()
  • 对象被引用 p2 = p1
  • 对象作为参数,传入到一个函数中
  • 对象作为一个元素,存在容器中 l = [p1]

引用计数减1场景:

  • 对象的别名被显示销毁 del p1
  • 对象的别名被赋予新的对象: p1 =123
  • 一个对象离开了它的作用域:一个函数执行完毕,内部的局部变量关联的对象,它的引用计数减1
  • 对象所在的容器被销毁,或从容器中删除该对象
class Person:    passclass Dog:    passimport objgraphp = Person()d = Dog()print(objgraph.count('Person')) #1print(objgraph.count('Dog'))  #1#对象 p 和 d相互持有,造成循环引用,当p和d被释放时,p.pet= dd.master = pdel pdel dprint(objgraph.count('Person')) #1print(objgraph.count('Dog')) #1复制代码

转载于:https://juejin.im/post/5a332fd66fb9a0450b666d6c

你可能感兴趣的文章
vim相关
查看>>
捐助账号
查看>>
线程交替运行
查看>>
ubuntu10.04 –像QQ一样截屏,注解
查看>>
三年观察揭示TNF抑制剂持续改善强柱患者躯体功能的预测因子
查看>>
数据库练习
查看>>
mongodb的开机自启动
查看>>
1303: [CQOI2009]中位数图
查看>>
1011: [HNOI2008]遥远的行星
查看>>
QTP的那些事--有关一个webtable数据的获取案例
查看>>
20190520
查看>>
《Python 二三事》——python学习必看(转载)
查看>>
Minimum Spanning Tree.prim/kruskal(并查集)
查看>>
北邮14&18年软院机试【参考】答案
查看>>
MySQL查询
查看>>
Linux学习笔记04
查看>>
Unity3d热更新之下载
查看>>
设计模式----备忘录模式
查看>>
如何用chkconfig查看手动输入,跳出循环的四个命令
查看>>
ORM了解知识
查看>>