public void deleteReference ( ) { if ( decreaseRefCount ( ) == 0 ) { T deleted ; synchronized ( this ) { deleted = mValue ; mValue = null ; } mResourceReleaser . release ( deleted ) ; removeLiveReference ( deleted ) ; } }
Decrement the reference count for the shared reference . If the reference count drops to zero then dispose of the referenced value