Sets or gets the attributes of subroutines. Attributes
are set for a subroutine at compile time; therefore, setting an
invalid attribute results in a compile-time error. Note that
attrs has been deprecated. You should use the
attributes form instead. During execution, when
you call attrs::get
on a subroutine
reference or name, it returns the list of attributes that are set.
Note that attrs::get
is not
exported. The old usage of attrs is as
follows:
sub test { use attrs qw(locked method); ... } @a = attrs::get( est);
You should use a form like the following instead:
sub test : locked method { }
You can read more about attributes in the next section.
The valid attributes are:
locked
Meaningful only when the subroutine or method will be
called by multiple threads. When set on a subroutine that also
has the method attribute set, invoking that subroutine
implicitly locks its first argument before execution. On a
non-method subroutine, a lock is taken on the subroutine itself
before execution. The lock semantics are identical to one taken
explicitly with the lock
operator immediately after entering the subroutine.
method
The invoking subroutine is a method.
18.224.59.192