@Override
  public @Nullable V pop() {
    OOMSoftReference<V> ref = (OOMSoftReference<V>) mFreeList.poll();
    Preconditions.checkNotNull(ref);
    V value = ref.get();
    ref.clear();
    mSpareReferences.add(ref);
    return value;
  }
A Bucket that uses OOMSoftReferences to store its free list.
imagepipeline/src/main/java/com/facebook/imagepipeline/memory/OOMSoftReferenceBucket.java