closes this closeablereference . decrements the reference count of the underlying object . if it is zero , the object will be released . this method is idempotent . calling it multiple times on the same instance has no effect . concode_field_sep ResourceReleaser<Closeable> DEFAULT_CLOSEABLE_RELEASER concode_elem_sep boolean mIsClosed concode_elem_sep Class<CloseableReference> TAG concode_elem_sep SharedReference<T> mSharedReference concode_field_sep void release concode_elem_sep CloseableReference<T> of concode_elem_sep CloseableReference<T> of concode_elem_sep T get concode_elem_sep boolean isValid concode_elem_sep boolean isValid concode_elem_sep CloseableReference<T> clone concode_elem_sep void finalize concode_elem_sep SharedReference<T> getUnderlyingReferenceTestOnly concode_elem_sep void closeSafely concode_elem_sep void closeSafely concode_elem_sep CloseableReference<T> cloneOrNull concode_elem_sep CloseableReference<T> cloneOrNull concode_elem_sep List<CloseableReference<T>> cloneOrNull concode_elem_sep int getValueHash
void function ( ) { synchronized ( this ) { if ( mIsClosed ) { return ; } mIsClosed = true ; } mSharedReference . deleteReference ( ) ; }