@Documented @Retention(value=RUNTIME) @InheritedAnnotation @Target(value={METHOD,CONSTRUCTOR}) public @interface LockingFree
synchronized
, it
contains no synchronized
blocks, it contains no calls to
lock
or unlock
, and it contains no calls to other
non-@LockingFree
methods.
@LockingFree
provides a stronger guarantee than
@
ReleasesNoLocks
and a weaker guarantee than
@
SideEffectFree
.
MayReleaseLocks
,
ReleasesNoLocks
,
SideEffectFree
,
Pure