public class MultiTaskManager extends Task implements RingOfDeathListener
Thread.State, Thread.UncaughtExceptionHandler| Modifier and Type | Field and Description |
|---|---|
protected RingBuffer<MultiTask> |
freeTaskQueue |
protected RingBuffer<ResultData> |
inputDataQueue |
protected ArrayList<MultiTask> |
taskList |
archMgr, didTree, INDEX_MEMORY_SIZE, isTerminated, logger, persMgr, ringOfDeathListener, taskStepListenersMAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY| Constructor and Description |
|---|
MultiTaskManager(ArchiveManager archiveMgr,
RingOfDeathListener rodl,
RingBuffer<ResultData> inputData,
String taskName) |
| Modifier and Type | Method and Description |
|---|---|
void |
addTask(MultiTask task)
Fuegt ein MultiTask hinzu und startet ihn, falls der MultitaskManager selbst schon gestartet ist.
|
int |
getTaskNum() |
void |
pushFreeTask(MultiTask task)
Diese Methode wird von einem Task aufgerufen, wenn dieser Task mit der Bearbeitung eines Auftrages fertig ist und einen neuen Auftrag entgegennehmen kann.
|
void |
removeTask()
Entfernt einen Subtask aus der Liste der verfuegbaren Tasks.
|
void |
ringOfDeath(Task doomedTask)
Wird von einem Task vor dem Verlassen der Hauptschleife aufgerufen, wenn dem Task dieses Interface im Konstruktor uebergeben wurde..
|
void |
run() |
void |
start() |
String |
toString() |
addTaskStepListener, getArchMgr, isTaskTerminated, removeTaskStepListener, suspendTaskIfNecessary, terminateTaskactiveCount, checkAccess, clone, countStackFrames, currentThread, destroy, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, stop, stop, suspend, yieldprotected RingBuffer<ResultData> inputDataQueue
protected RingBuffer<MultiTask> freeTaskQueue
public MultiTaskManager(ArchiveManager archiveMgr, RingOfDeathListener rodl, RingBuffer<ResultData> inputData, String taskName)
public void addTask(MultiTask task)
task - ConfigurationExceptionpublic void removeTask()
public int getTaskNum()
public void pushFreeTask(MultiTask task)
task - public void ringOfDeath(Task doomedTask)
RingOfDeathListenerringOfDeath in interface RingOfDeathListenerdoomedTask - Task, der gerade beendet wird