系统相关
首页 > 系统相关> > 记录---python内存管理机制

记录---python内存管理机制

作者:互联网

python中创建的对象的时候,首先会去申请内存地址,然后对对象进行初始化,所有对象都会维护在一个叫做refchain的双向循环链表中,每个数据都保存如下信息

一、引用计数机制 引用计数增加: 引用计数减少: 查看引用计数 import sys sys.getrefcount(obj) 二、数据池和缓存 1、小整数池 Python自动将-5~256的整数进行了缓存到一个小整数池中,当你将这些整数赋值给变量时,并不会重新创建对象,而是使用已经创建好的缓存对象,当删除这些数据的引用时,也不会进行回收。 2、intern机制 intern机制,也称为字符串驻留池,是针对于字符串内存管理的一种优化处理的机制。 intern机制的优点是,在创建新的字符串对象时,会先在缓存池里面找是否有已经存在的值相同的对象(标识符,即只包含数字、字母、下划线的字符串),如果有,则直接拿过来用(引用),避免频繁的创建和销毁内存,提升效率。 3、缓存机制

 

三、标记清除: 引用计数存在一个缺点:那就是当两个对象出现循环引用的时候,那么这个两个变量始终不会被销毁,这样就会导致内存泄漏。 标记清除就是为了解决上述循环引用的情况 四、分代回收 gc.get_threshold:获取分代回收的频率

标签:10,缓存,计数,python,管理机制,---,对象,销毁,引用
来源: https://www.cnblogs.com/testdevzyj/p/16062959.html