1 /* 2 * Written by Doug Lea with assistance from members of JCP JSR-166 3 * Expert Group and released to the public domain, as explained at 4 * http://creativecommons.org/publicdomain/zero/1.0/ 5 */ 6 7 package java.util.concurrent; 8 9 /** 10 * A mix-in style interface for marking objects that should be 11 * acted upon after a given delay. 12 * 13 * <p>An implementation of this interface must define a 14 * {@code compareTo} method that provides an ordering consistent with 15 * its {@code getDelay} method. 16 * 17 * @since 1.5 18 * @author Doug Lea 19 */ 20 public interface Delayed extends Comparable<Delayed> { 21 22 /** 23 * Returns the remaining delay associated with this object, in the 24 * given time unit. 25 * 26 * @param unit the time unit 27 * @return the remaining delay; zero or negative values indicate 28 * that the delay has already elapsed 29 */ getDelay(TimeUnit unit)30 long getDelay(TimeUnit unit); 31 } 32