Q - The type of SimQueues supported.public abstract class SimQueuePredictor_Preemptive<Q extends AbstractPreemptiveSimQueue> extends AbstractSimQueuePredictor<Q>
SimQueuePredictor for preemptive queues.Copyright (C) 2005-2017 Jan de Jongh, TNO
This file is covered by the LICENSE file in the root of this project.
| Constructor and Description |
|---|
SimQueuePredictor_Preemptive() |
| Modifier and Type | Method and Description |
|---|---|
protected void |
preemptJob(Q queue,
SimQueueState<SimJob,Q> queueState,
SimJob executingJob,
Set<JobQueueVisitLog<SimJob,Q>> visitLogsSet)
Preempts a job in given
SimQueueState. |
is_ROEL_U_UnderWorkloadQueueEventClashes, is_U_UnderWorkloadQueueEventClashes, predict_SQ_SV_IOEL_U, predict_SQ_SV_ROEL_Uclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitmatchVisitLogs_SQ_SVcreateQueueState, createWorkloadSchedule_SQ_SV_ROEL_U, createWorkloadSchedule_SQ_SV, doQueueEvents_SQ_SV_ROEL_U, doWorkloadEvents_SQ_SV_ROEL_U, doWorkloadEvents_SQ_SV, getNextQueueEventTimeBeyond, updateToTimehasServerAccessCredits, isQueueAccessVacation, isStartArmedprotected void preemptJob(Q queue, SimQueueState<SimJob,Q> queueState, SimJob executingJob, Set<JobQueueVisitLog<SimJob,Q>> visitLogsSet) throws SimQueuePredictionException
SimQueueState.
Updates all relevant fields in the SimQueueState and takes the appropriate action
on the job that is being preempted, depending on the PreemptionStrategy on the queue.
queue - The queue, non-null.queueState - The queue state, non-null.executingJob - The job to preempt, non-null.visitLogsSet - The visit-logs for logging dropped or departed jobs, may be null.SimQueuePredictionException - If the predictor cannot finish (e.g., due to ambiguity, complexity or plain errors).IllegalArgumentException - If one or more of the mandatory arguments is null.UnsupportedOperationException - If the preemption strategy is PreemptionStrategy.REDRAW
of PreemptionStrategy.CUSTOM.Copyright © 2018. All rights reserved.