001package jmri; 002 003import java.lang.annotation.*; 004import javax.annotation.concurrent.ThreadSafe; 005 006/** 007 * Annotation denoting that a method or constructor may be called on any thread. 008 * <p> 009 * This annotation implies a method is {@link ThreadSafe}, but says nothing 010 * about whether or not a class is ThreadSafe. 011 * <p> 012 * For more information on JMRI threading conventions, see the 013 * <a href="http://jmri.org/help/en/html/doc/Technical/Threads.shtml">JMRI Threading docoumentation page</a>. 014 * 015 * @author Bob Jacobsen Copyright 2018 016 * @author Paul Bender Copyright 2018 017 */ 018 019@Retention(RetentionPolicy.CLASS) // For access by SpotBugs et al 020@Target({ElementType.METHOD, ElementType.CONSTRUCTOR}) 021@Documented 022@Inherited 023 024public @interface InvokeOnAnyThread {} 025