Annotation Type UnlockMethod


@Target(METHOD)
@Retention(CLASS)
public @interface UnlockMethod
The method to which this annotation is applied releases one or more locks. The caller must hold the locks when the function is entered, and will not hold them when it completes.

This annotation does not apply to built-in (synchronization) locks, which cannot be released without being acquired in the same method.

The arguments determine which locks the annotated method releases:

  • field-name: The lock is referenced by the final instance field specified by field-name.
  • class-name.this.field-name: For inner classes, it may be necessary to disambiguate 'this'; the class-name.this designation allows you to specify which 'this' reference is intended.
  • class-name.field-name: The lock is referenced by the static final field specified by class-name.field-name.
  • method-name(): The lock object is returned by calling the named nullary method.
  • Required Element Summary

    Required Elements
    Modifier and Type Required Element Description
    String[] value  
  • Element Details