001    package javax.realtime;
002    
003    /** Monitor control class specifying use of the priority inheritance
004     *  protocol for object monitors. Objects under the influence of this
005     *  protocol have the effect that a thread entering the monitor will
006     *  boost the effective priority of the thtread in the monitor to its
007     *  own effective priority. When that thread exits the monitor, its
008     *  effective priority will be restored to its previous value.
009     */
010    public class PriorityInheritance extends MonitorControl {
011    
012        private static PriorityInheritance defaultPriorityInheritance;
013    
014        public PriorityInheritance() {}
015    
016        /** Return a pointer to the singleton <code>PriorityInheritance</code>. */
017        public static PriorityInheritance instance() {
018            if (defaultPriorityInheritance == null)
019                defaultPriorityInheritance = new PriorityInheritance();
020    
021            return defaultPriorityInheritance;
022        }
023    }