In [1]: class T(object):
...: pass
...:
In [2]: x = T()
In [3]: print(x)
<__main__.T object at 0x03328E10>
In [4]: x = T()
In [5]: print(x)
<__main__.T object at 0x03345090>
内存位置何时分配给第一个T()
对象(0x03328E10)已释放?是不是当变量x
被覆盖或者垃圾收集器运行时或脚本结束时?
我假设这是垃圾收集器运行的时候,但我不知道如何测试这个假设。
Python 内存管理大部分是通过引用计数完成的,而不是垃圾收集。当引用计数变为零时,内存可用于重新分配。
垃圾收集器仅在存在循环引用时发挥作用,但这里的情况并非如此。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)