Package jline.lang.layered
Class Task
-
- All Implemented Interfaces:
-
java.io.Serializable,jline.lang.Copyable
public class Task extends LayeredNetworkElement
A Task represents a software component or process in a layered queueing network that can host services (Entry objects) and runs on a Processor (Host).
Tasks are fundamental building blocks in layered queueing networks that encapsulate:
- Service entries that define the interfaces accessible to other tasks
- Activities that represent internal processing steps
- Activity precedences that define the execution order and relationships
- Resource demands and scheduling policies
Key characteristics:
- Multiplicity: Number of concurrent task instances that can execute
- Scheduling: How the task schedules its internal processing (FCFS, PS, etc.)
- Think time: Time between completing one request and starting the next
- Reference tasks: Special tasks that generate workload (external customers)
Tasks can be reference tasks (SchedStrategy.REF) that represent external workload generators, or regular tasks that provide services to other tasks in the system.
-
-
Field Summary
Fields Modifier and Type Field Description protected Processorparentprotected intmultiplicityprotected intreplicationprotected SchedStrategyschedulingprotected DistributionthinkTimeprotected doublethinkTimeMeanprotected doublethinkTimeSCVprotected List<Entry>entriesprotected List<Activity>activitiesprotected List<ActivityPrecedence>precedencespublic final static intACTIVITYpublic final static intCALLpublic final static intENTRYpublic final static intHOSTpublic final static intPROCESSORpublic final static intTASKpublic LayeredNetworkmodelprotected Stringname
-
Constructor Summary
Constructors Constructor Description Task(LayeredNetwork model, String name, int multiplicity, SchedStrategy scheduling, Distribution thinkTime)Task(LayeredNetwork model, String name, int multiplicity, SchedStrategy scheduling)Task(LayeredNetwork model, String name, int multiplicity)Task(LayeredNetwork model, String name)
-
Method Summary
Modifier and Type Method Description TaskaddActivity(Activity newActivity)TaskaddEntry(Entry newEntry)TaskaddPrecedence(ActivityPrecedence newPrec)TaskaddPrecedence(List<ActivityPrecedence> newPrec)TaskaddPrecedence(Array<ActivityPrecedence> newPrec)doublegetMeanHostDemand(String entryName)Taskon(Processor parent)TaskremoveActivity(int index)TasksetActivity(Activity newActivity, int index)TasksetAsReferenceTask()TasksetReplication(int replication)TasksetThinkTime(Distribution thinkTime)TasksetThinkTime(double thinkTime)TasksetReplyEntry(List<Entry> replyEntry)-
-
Constructor Detail
-
Task
Task(LayeredNetwork model, String name, int multiplicity, SchedStrategy scheduling, Distribution thinkTime)
-
Task
Task(LayeredNetwork model, String name, int multiplicity, SchedStrategy scheduling)
-
Task
Task(LayeredNetwork model, String name, int multiplicity)
-
Task
Task(LayeredNetwork model, String name)
-
-
Method Detail
-
addActivity
Task addActivity(Activity newActivity)
-
addPrecedence
Task addPrecedence(ActivityPrecedence newPrec)
-
addPrecedence
Task addPrecedence(List<ActivityPrecedence> newPrec)
-
addPrecedence
Task addPrecedence(Array<ActivityPrecedence> newPrec)
-
getMeanHostDemand
double getMeanHostDemand(String entryName)
-
removeActivity
Task removeActivity(int index)
-
setActivity
Task setActivity(Activity newActivity, int index)
-
setAsReferenceTask
Task setAsReferenceTask()
-
setReplication
Task setReplication(int replication)
-
setThinkTime
Task setThinkTime(Distribution thinkTime)
-
setThinkTime
Task setThinkTime(double thinkTime)
-
setReplyEntry
Task setReplyEntry(List<Entry> replyEntry)
-
-
-
-