引用计数到达零后多久是__del__
方法调用?该语言是否承诺在任何其他使用代码可以执行之前立即完成?或者,每个实现都可以按照自己喜欢的方式进行,可能会延迟任意长的电话号码__del__
?参考计数下降到零后,多久会调用__del__?
请忽略程序即将退出的情况(我假设它意味着给定块中的最后一条语句已完成,并且堆栈为空)。我明白在这种情况下,没有关于__del__
的承诺;它甚至可能根本不会被调用。
另外,我知道引用计数可能由于周期等原因而不是零。在这里我不关心这个问题(我在问一个单独的问题)。
通过说“引用计数”,你已经做出了假设。 – 2012-03-20 23:40:49
如果您考虑实施它,请首先阅读**胖胖的红色警告**:http://docs.python.org/reference/datamodel.html#object.__del__ – ThiefMaster 2012-03-20 23:43:38
您基本上不想用'__del__'做任何事情:http://blogs.msdn.com/b/oldnewthing/archive/2010/08/09/10047586.aspx – SingleNegationElimination 2012-03-20 23:46:44