擅长:python、mysql、java
<p>如果不遍历垃圾收集器中的<strong>所有</strong>引用,并测试每一个引用是否是对该</em>对象的引用,然后将该引用设置为<code>None</code>。你不想去那里。记住:可以有多个对对象的引用:</p>
<pre><code>a = A()
b = a
a.finish() # what should be set to `None` now? a, b or both?
</code></pre>
<p>不是<code>a.finish()</code>,而是<code>del a</code>,可能与实现<a href="http://docs.python.org/3/reference/datamodel.html#object.__del__" rel="nofollow">^{<cd4>} clean-up hook</a>相结合。在</p>
<p>如果超时后需要清理对象,请将对象添加到全局列表中,并在播放结束后将其从该列表中删除。列表可以在类本身上:</p>
^{pr2}$
<p>如果没有其他引用实例,Python将负责为您清理:</p>
<pre><code>a = Playingsound()
a.fadeout_and_stop()
del a
</code></pre>
<p>您始终可以通过<code>Playingsound.playing</code>访问任何仍在播放的声音。在</p>