Skip to content

Instantly share code, notes, and snippets.

@Vachok
Last active April 28, 2018 07:51
Show Gist options
  • Save Vachok/e6e0ee0ad6868f9fd6513ba7e46b796f to your computer and use it in GitHub Desktop.
Save Vachok/e6e0ee0ad6868f9fd6513ba7e46b796f to your computer and use it in GitHub Desktop.
class ObjectPoll{
List<PooledObject> free = new LinkedList<>();
List<PooledObject> used = new LinkedList<>();
PooledObject getPooledObject(){
if (free.isEmpty()){
PooledObject pooledObject = new PooledObject();
free.add(pooledObject);
return pooledObject;
}else {
PooledObject pooledObject = free.get(0);
used.add(pooledObject);
free.remove(pooledObject);
return pooledObject;
}
{
ObjectPoll objectPoll = new ObjectPoll();
PooledObject pooledObject = objectPoll.getPooledObject(); // взяли1
PooledObject pooledObject2 = objectPoll.getPooledObject(); // взяли2
System.out.println("pooledObject = " + pooledObject.toString());
System.out.println("pooledObject2 = " + pooledObject2.toString());
}
class PooledObject{
@Override
public String toString() {
return "PooledObject{Йа твой объект и йа плаваю в бассейне!} - " + PooledObject.class.getTypeName() + new Random(10).nextInt();
}
}
@Vachok
Copy link
Author

Vachok commented Apr 28, 2018

RESULT
pooledObject = PooledObject{Йа твой объект и йа плаваю в бассейне!} - pattern.objpool.PooledObject-1157793070
pooledObject2 = PooledObject{Йа твой объект и йа плаваю в бассейне!} - pattern.objpool.PooledObject-1157793070

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment