public SimpleObjectPool <T> GetObjectPool <T>() where T : new() { object objectPool; var type = typeof(T); if (!mObjectPools.TryGetValue(type, out objectPool)) { objectPool = new SimpleObjectPool <T>(() => new T()); mObjectPools.Add(type, objectPool); } return((SimpleObjectPool <T>)objectPool); }
public void RegisterCustomObjectPool <T>(SimpleObjectPool <T> simpleObjectPool) { mObjectPools.Add(typeof(T), simpleObjectPool); }