01: package net.jcip.annotations;
02:
03: import java.lang.annotation.*;
04:
05: /*
06: * Copyright (c) 2005 Brian Goetz and Tim Peierls
07: * Released under the Creative Commons Attribution License
08: * (http://creativecommons.org/licenses/by/2.5)
09: * Official home: http://www.jcip.net
10: *
11: * Any republication or derived work distributed in source code form
12: * must include this copyright and license notice.
13: */
14:
15: /**
16: * The class to which this annotation is applied is thread-safe. This means that
17: * no sequences of accesses (reads and writes to public fields, calls to public methods)
18: * may put the object into an invalid state, regardless of the interleaving of those actions
19: * by the runtime, and without requiring any additional synchronization or coordination on the
20: * part of the caller.
21: */
22: @Documented
23: @Target(ElementType.TYPE)
24: @Retention(RetentionPolicy.RUNTIME)
25: public @interface ThreadSafe {
26: }
|