Back to project page GameEngine.
The source code is released under:
# Copyright 2013 JK Wood <joshuakwood@gmail.com> # This framework is released under the Dog-on-Fire License: # If use of this framework causes your dog to catch on fire, # you agree to send me five d...
If you think the Android project GameEngine listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.
package com.slaxer.framework; //from w w w . j av a2s . c o m import java.util.ArrayList; import java.util.List; public class Pool<T> { public interface PoolObjectFactory<T>{ public T createObject(); } private final List<T> freeObjects; private final PoolObjectFactory<T> factory; private final int maxSize; public Pool(PoolObjectFactory<T> factory, int maxSize) { this.factory = factory; this.maxSize = maxSize; this.freeObjects = new ArrayList<T>(maxSize); } public T newObject(){ T object = null; if(freeObjects.size() == 0) object = factory.createObject(); else object = freeObjects.remove(freeObjects.size() -1); return object; } public void free(T object){ if(freeObjects.size() < maxSize) freeObjects.add(object); } }