擅长:python、mysql、java
<p>有几种方法可以做到这一点,您可以使用一个Class属性来存储所有实例——如果您这样做,您可能希望通过weakref模块将它们存储为弱引用,以防止垃圾收集出现问题:</p>
<pre><code>class MyClass(object):
_instances=[]
def __init__(self):
if(len(self._instances) > 2):
self._instances.pop(0).kill() #kill the oldest instance
self._instances.append(self)
def kill(self):
pass #Do something to kill the instance
</code></pre>
<p>这有点难看。您可能还想考虑使用某种工厂(有条件地)创建一个新实例。这个方法比较一般。在</p>
^{pr2}$