@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