javax.realtime
Class ImportanceParameters

java.lang.Object
  extended byjavax.realtime.SchedulingParameters
      extended byjavax.realtime.PriorityParameters
          extended byjavax.realtime.ImportanceParameters
All Implemented Interfaces:
Cloneable

public class ImportanceParameters
extends PriorityParameters

Importance is an additional scheduling metric that may be used by some priority-based scheduling algorithms during overload conditions to differentiate execution order among threads of the same priority. In some real-time systems an external physical process determines the period of many threads. If rate-monotonic priority assignment is used to assign priorities many of the threads in the system may have the same priority because their periods are the same. However, it is conceivable that some threads may be more important than others and in an overload situation importance can help the scheduler decide which threads to execute first. The base scheduling algorithm represented by PriorityScheduler is not required to use importance. However, the RTSJ strongly suggests to implementers that a fairly simple subclass of PriorityScheduler that uses importance can offer value to some real-time applications.

Author:
Angelo Corsaro, Morgan Deters

Field Summary
 
Fields inherited from class javax.realtime.PriorityParameters
priority
 
Constructor Summary
ImportanceParameters(int priority, int importance)
          Create an instance of ImportanceParameters.
 
Method Summary
 int getImportance()
          Gets the importance value.
 void setImportance(int importance)
          Sets the importance value.
 String toString()
          Get a String representation of this ImportanceParameters.
 
Methods inherited from class javax.realtime.PriorityParameters
getPriority, setPriority
 
Methods inherited from class javax.realtime.SchedulingParameters
clone
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ImportanceParameters

public ImportanceParameters(int priority,
                            int importance)
Create an instance of ImportanceParameters.

Parameters:
priority - The priority assigned to a thread. This value is used in place of the value returned by java.lang.Thread.setPriority(int)
importance - The importance value assigned to a thread.
Method Detail

getImportance

public int getImportance()
Gets the importance value.

Returns:
the importance value

setImportance

public void setImportance(int importance)
Sets the importance value.

Parameters:
importance - the new importance value
Throws:
IllegalArgumentException - if the given importance value is incompatible with the Scheduler for any of the Schedulable objects currently sharing this SchedulingParameters object

toString

public String toString()
Get a String representation of this ImportanceParameters.

Overrides:
toString in class PriorityParameters
Returns:
a String representation of this ImportanceParameters


jRate is developed and maintained by the jRate project development team.
Copyright (c) 2001-2006 Angelo Corsaro and Morgan Deters.