最近,我讀objgraph文檔,我感到困惑下面的代碼它是否有內存泄漏?
>>> class MyBigFatObject(object):
... pass
...
>>> def computate_something(_cache={}):
... _cache[42] = dict(foo=MyBigFatObject(),
... bar=MyBigFatObject())
... # a very explicit and easy-to-find "leak" but oh well
... x = MyBigFatObject() # this one doesn't leak
這表明,「一個非常露骨,易於找到的‘漏’」。這是否有內存泄漏?這是字典_cache?
它不是泄漏,因爲只要'computate_something'在範圍內,總會有'_cache'的引用,所以它會一直保留在內存中 – GP89 2012-07-27 08:54:21