Function IAtomicRefCounted.releaseShared

Atomically decrement the reference count. If refCount reaches zero, and disposeOnZero is set, the object is locked with its own mutex, and dispose is called. In most cases, the calling code should set disposeOnZero, unless it is intended to release the object to give it away. (such as at the end of a builder function)

abstract bool releaseShared (
  in const(std.typecons.Flag!("disposeOnZero")) disposeOnZero = cast(Flag)true
) shared;

Returns

true if the object was disposed during this call, false otherwise.