为什么“ gc.get_objects“功能中会导致循环参考或内存泄漏?
此代码将成为循环参考!, 如果对象禁用自动垃圾收集,则“ gc.disable()”, 运行它会使内存泄漏!
import gc, sys
def test_func():
objs = gc.get_objects()
priint("-----End: test_func %s" % sys.getrefcount(test_func))
test_func()
我知道这是对的,但是为什么???
import gc, sys
def test_func():
objs = gc.get_objects()
del objs
priint("-----End: test_func %s" % sys.getrefcount(test_func))
test_func()
版本:2.7 谢谢兄弟!
this code will make circular reference!,
if object disable automatic garbage collection,"gc.disable()",
running it will make memory leaking!
import gc, sys
def test_func():
objs = gc.get_objects()
priint("-----End: test_func %s" % sys.getrefcount(test_func))
test_func()
l know this is right, but why???
import gc, sys
def test_func():
objs = gc.get_objects()
del objs
priint("-----End: test_func %s" % sys.getrefcount(test_func))
test_func()
version: 2.7
thank bro!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我就知道
I knew it