python del释放内存

    技术2022-07-11  96

    说明

    del语句作用在变量上,而不是数据对象上del删除的是变量,而不是数据__del__是个特殊方法,它不会销毁实例无论手动del还是等Python自动GC,都会调用到__del__

    例子

    class A: def __init__(self): print("__init__() ") def __del__(self): print("__del__()") a = A() b = a del a print("***********") #输出 >__init__() >*********** >__del__()

    注意看输出结果, __del__()是在调用print()之后打印的,这是为什么呢?

    手动调用 __del__() 方法,该方法也不会立即执行Python 采用自动引用计数(简称 ARC)的方式实现垃圾回收机制每当遇到 del x, Python 会将 x 的引用数减1, 当 x 的引用数减到0时就会调用 x.__del__()
    Processed: 0.010, SQL: 9