public virtual void Recycle(ObjectsPoolEntry e) { Assert.IsInstanceOfType <T>(e); Assert.AreSame(this, e.pool); AddLastItem(e); }
public override void Recycle(ObjectsPoolEntry e) { lock (this) { base.Recycle(e); } }
public virtual T NextObject() { ObjectsPoolEntry first = RemoveFirstItem(); if (first == null) { first = CreateObject(); } first.pool = this; first.recycled = false; return((T)first); }