说明
1、python中的一切都是对象,它们的核心是一个结构:PyObject。
2、简单实时。一旦没有引用,内存就会直接释放。没有必要像其他机制一样等待特定的时间。
实例
typedefstruct_object{ intob_refcnt; struct_typeobject*ob_type; }PyObject; Pyobject是每个对象的必备内容,其中ob_refcnt作为引用计数。当一个对象有新的引用时,它的ob_refcnt就会增加,当引用它的对象被删除时,它的ob_refcnt将减少 #definePy_INCREF(op)((op)->ob_refcnt++)///增加计数 #definePy_DECREF(op)\//减少计数 if(--(op)->ob_refcnt!=0)\ ;\ else\ __Py_Dealloc((PyObject*)(op)) 当引用计数为0时,对象的生命就结束了。
以上是Python引用计数机制的使用,希望对大家有所帮助。更多Python学习指导:python基础教程
本文教程操作环境:windows7系统Python 3.9.1,DELL G3电脑。