垃圾回收机制

"""有些编程语言针对内存空间的创建和释放 是需要程序员自己写代码的"""
但是在python中 不需要程序员考虑创建和释放 全部有python自动处理
1.引用计数
name = 'jason' # jason引用计数是1
n = name # jason引用计数是2
del n # jason引用计数是1
只要数据值身上的引用计数不为0则不会被删除表示还有用 如果为0则为垃圾
'''引用计数虽然很合理 但是有一个bug>>>:循环引用'''
2.标记清除
针对循环引用:当内存即将溢出的时候会自动停止程序的运行 然后核查程序中所有的数据身上的引用计数并且可以识别出来循环引用并打上标记之后一次性清除掉所有循环引用的数据
3.分代回收
为了减轻垃圾回收机制的压力(节省计算机资源)
根据数据值被检查存活周期的长短分类 越长的检测频率月底 越短的检测频率越高

posted @ 2022-08-12 18:51  呼长喜  阅读(19)  评论(0编辑  收藏  举报