Advertisement
Guest User

Pool.java

a guest
Jun 12th, 2012
173
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 0.43 KB | None | 0 0
  1. interface Factory<T> {
  2.     T create();
  3. }
  4.  
  5. public class Pool<T> {
  6.  
  7.     private final Factory<T> factory;
  8.     private final Array<T> pool;
  9.    
  10.     public Pool(Factory<T> factory) {
  11.         this.factory = factory;
  12.         pool = new Array<T>();
  13.     }
  14.    
  15.     public void clear() {
  16.         pool.clear();
  17.     }
  18.    
  19.     public T obtain() {
  20.         if (pool.size > 0)
  21.             return pool.pop();
  22.        
  23.         return factory.create();
  24.     }
  25.  
  26.     public void release(T t) {
  27.         pool.add(t);
  28.     }
  29. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement