Class SimUnfairPassiveResource
java.lang.Object
de.uka.ipd.sdq.simulation.abstractsimengine.SimulationElement
de.uka.ipd.sdq.simulation.abstractsimengine.AbstractSimEntityDelegator
de.uka.ipd.sdq.scheduler.entities.SchedulerEntity
de.uka.ipd.sdq.scheduler.resources.AbstractSimResource
edu.kit.ipd.sdq.pcm.simulation.scheduler.exact.resources.passive.SimAbstractPassiveResource
edu.kit.ipd.sdq.pcm.simulation.scheduler.exact.resources.passive.SimUnfairPassiveResource
- All Implemented Interfaces:
de.uka.ipd.sdq.scheduler.IPassiveResource,de.uka.ipd.sdq.simulation.abstractsimengine.IEntity
-
Field Summary
Fields inherited from class edu.kit.ipd.sdq.pcm.simulation.scheduler.exact.resources.passive.SimAbstractPassiveResource
main_resource, waiting_queueFields inherited from class de.uka.ipd.sdq.scheduler.resources.AbstractSimResource
capacityFields inherited from class de.uka.ipd.sdq.simulation.abstractsimengine.AbstractSimEntityDelegator
delegateFields inherited from interface de.uka.ipd.sdq.simulation.abstractsimengine.IEntity
NULL -
Constructor Summary
ConstructorsConstructorDescriptionSimUnfairPassiveResource(de.uka.ipd.sdq.scheduler.SchedulerModel model, long capacity, org.palladiosimulator.pcm.repository.PassiveResource passiveResource, IPriorityBoost priority_boost, SimActiveResource managing_resource, double acquisition_demand, boolean isFifo, org.palladiosimulator.pcm.core.composition.AssemblyContext assemblyContext) -
Method Summary
Modifier and TypeMethodDescriptionbooleanacquire(de.uka.ipd.sdq.scheduler.ISchedulableProcess sched_process, long num, boolean timeout, double timeoutValue) voidaddObserver(de.uka.ipd.sdq.scheduler.sensors.IPassiveResourceSensor observer) longvoidrelease(de.uka.ipd.sdq.scheduler.ISchedulableProcess sched_process, long num) voidremoveObserver(de.uka.ipd.sdq.scheduler.sensors.IPassiveResourceSensor observer) protected booleantryToDequeueProcess(WaitingProcess waitingProcess) Tries to remove the given process from the waiting queue and get access of the required number of passive resources.Methods inherited from class edu.kit.ipd.sdq.pcm.simulation.scheduler.exact.resources.passive.SimAbstractPassiveResource
boostPriority, fromRunningToWaiting, fromWaitingToReady, getAssemblyContext, getResource, getWaitingProcesses, punish, toStringMethods inherited from class de.uka.ipd.sdq.scheduler.resources.AbstractSimResource
equals, getCapacity, getId, getName, hashCodeMethods inherited from class de.uka.ipd.sdq.scheduler.entities.SchedulerEntity
getModelMethods inherited from class de.uka.ipd.sdq.simulation.abstractsimengine.AbstractSimEntityDelegator
getEncapsulatedEntity, isScheduled, rescheduleMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface de.uka.ipd.sdq.scheduler.IPassiveResource
getCapacity, getId, getName
-
Constructor Details
-
SimUnfairPassiveResource
public SimUnfairPassiveResource(de.uka.ipd.sdq.scheduler.SchedulerModel model, long capacity, org.palladiosimulator.pcm.repository.PassiveResource passiveResource, IPriorityBoost priority_boost, SimActiveResource managing_resource, double acquisition_demand, boolean isFifo, org.palladiosimulator.pcm.core.composition.AssemblyContext assemblyContext)
-
-
Method Details
-
acquire
public boolean acquire(de.uka.ipd.sdq.scheduler.ISchedulableProcess sched_process, long num, boolean timeout, double timeoutValue) -
release
public void release(de.uka.ipd.sdq.scheduler.ISchedulableProcess sched_process, long num) -
tryToDequeueProcess
Tries to remove the given process from the waiting queue and get access of the required number of passive resources.- Parameters:
waitingProcess-- Returns:
- True if the process was successfully dequeued and activated, otherwise false.
-
addObserver
public void addObserver(de.uka.ipd.sdq.scheduler.sensors.IPassiveResourceSensor observer) -
removeObserver
public void removeObserver(de.uka.ipd.sdq.scheduler.sensors.IPassiveResourceSensor observer) -
getAvailable
public long getAvailable()
-