void Start() { //绑定上下文 clanView.BindingContext = new ClanViewModel(); //立刻显示 clanView.Reveal(); PoolObjectFactory poolObjectFactory = new PoolObjectFactory(5, true); poolObjectFactory.AcquireObject(typeof(UserRepository)); poolObjectFactory.AcquireObject(typeof(UserRepository)); poolObjectFactory.AcquireObject(typeof(UserRepository)); var result = poolObjectFactory.AcquireObject(typeof(UserRepository)); poolObjectFactory.ReleaseObject(result); poolObjectFactory.AcquireObject(typeof(UserRepository)); poolObjectFactory.AcquireObject(typeof(UserRepository)); // ServiceLocator.RegisterSingleton<UserRepository>(); // // var userRepo = ServiceLocator.Resolve<UserRepository>(); // userRepo.Add(); // // var userRepo1 = ServiceLocator.Resolve<UserRepository>(); // userRepo1.Add(); // var unitRepo = ServiceLocator.Resolve<IUnitRepository>(); // unitRepo.Get(); ServiceLocator.RegisterSingleton <IUnitRepository, UnitRepository>(); ServiceLocator.Resolve <IUnitRepository>(); }
public Pool(PoolObjectFactory <T> pof, int maxSize) { _factory = pof; _maxSize = maxSize; _freeObjects = new Queue <T>(maxSize); }
public Pool(PoolObjectFactory <T> factory, int maxSize) { this.m_Factory = factory; this.m_MaxSize = maxSize; this.m_FreeObjects = new List <T>(maxSize); }