python的内存管理

1.引用计数

每个对象记录被对象绑定的数量,当为0时被销毁
缺点:列表循环引用:两个列表即使都是垃圾也不会被销毁,因为引用计数为1

2.标记清除

扫描全部内存,标记没用的数
缺点:全盘扫描消耗资源过大

3.分代回收(年轻代,中年代,老年代)

新创建的对象,会在年轻代分配空间
本带空间存满后,进行升代(标记清除)
继续在本空间开头存储数据
老年代被清除的几率不是很高。

4.价值

尽量少产生垃圾

stro01 = ''
for i in range(10):
	#str01 = str01 + str(i)   这样会创建垃圾
	#使用列表,追加比较合适

对象池,提高内存利用率,相同对象只存储一份
拓展:小整数池(-5—256)整数,会存在内存中不释放

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值