commons pool2 的org.apache.commons.pool2.impl包下提供了一个对象池的具体实现GenericObjectPool。
类内部使用一个ConcurrentHashmap存储所有的objects:
private final Map<IdentityWrapper<T>, PooledObject<T>> allObjects =
new ConcurrentHashMap<IdentityWrapper<T>, PooledObject<T>>();
其中使用了一个包裹类IdentityWrapper作为map的key,该类是GenericObjectPool的一个static类:
static class IdentityWrapper<T> {
/** Wrapped object */
private final T instance;
...
@Override
public