|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectjava.lang.Thread
AMETAS.util.threadpool.WorkerThread
AMETAS.util.threadpool.DynamicWorkerThread
Objekte dieser Klasse werden in einem ThreadPool
gehalten, um die Wroker eines Klienten (Aufrufers) in
einem eigenen Thread auszuführen. Jeder WorkerThread
wartet solange, bis ihm ein Worker zugewiesen
wird. Diesen Worker führt der
WorkerThread aus, indem er dessen
work()-Methode aufruft. Nach Beendigung dieser
Methode kehrt der Thread wieder in den Wartezustand zurück, bis
ihm vom ThreadPool ein neuer Worker
übergeben wird. Man könnte sagen, WorkerThreads sind
beliebig oft wiederverwendbare Threads.
| Field Summary |
| Fields inherited from class AMETAS.util.threadpool.WorkerThread |
m_bActive, m_bBusy, m_monSync, m_nNumericID, m_sem, m_wrkWorker |
| Fields inherited from class java.lang.Thread |
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY |
| Constructor Summary | |
DynamicWorkerThread(Semaphore sem,
boolean bKeepAlive,
Worker wrk,
int nTimeout,
int nNumericID)
Konstruktor |
|
| Method Summary | |
void |
deactivate()
Weist diesen WorkerThread an, sich selbst sanft
zu beenden. |
boolean |
isActive()
Gibt an, ob dieser Thread aktiv ist, d.h. noch nicht beendet wurde. |
boolean |
isBusy()
Gibt an, ob dieser WorkerThread gerade arbeitet ( true) oder frei ist (false). |
boolean |
isUpAndRunning()
Gibt an, ob dieser Thread initialisiert ist und bereit ist, Anfragen entgegenzunehmen. |
boolean |
keepAlive()
Gibt an, ob dieser Thread unabhängig von der Auslastung des Pools am Leben bleiben soll. |
void |
run()
Implementierung der Methode java.lang.Thread.run(). |
void |
startWorker(Worker wrk)
Setzt einen neuen Worker in diesen Thread ein und startet ihn. |
java.lang.String |
toString()
Liefert eine String-Repräsentation des WorkerThreads. |
| Methods inherited from class java.lang.Thread |
activeCount, checkAccess, countStackFrames, currentThread, destroy, dumpStack, enumerate, getContextClassLoader, getName, getPriority, getThreadGroup, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setName, setPriority, sleep, sleep, start, stop, stop, suspend, yield |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Constructor Detail |
public DynamicWorkerThread(Semaphore sem,
boolean bKeepAlive,
Worker wrk,
int nTimeout,
int nNumericID)
sem - Die Semaphore, die der ThreadPool
verwendet, um die Zahl der betriebenen
WorkerThreads zu kontrollieren.bKeepAlive - gibt an, ob dieser Thread zur
Grundausstattung des Pools gehört und nicht durch ein
Timeout beendet wird.wrk - ein Worker, der durch den neu erzeugten Thread
sofort ausgeführt werden soll. Nach Beendigung dieses Workers
wartet der Thread auf neue Anfragen.nTimeout - Anzahl von Millisekunden, die dieser Thread
nach seinem Start oder der Bearbeitung eines Workers auf einen
neuen Auftrag warten soll. Wird diese Zeit überschritten,
beendet sich dieser Thread selbständig.| Method Detail |
public boolean keepAlive()
public boolean isUpAndRunning()
public boolean isActive()
public void startWorker(Worker wrk)
startWorker in class WorkerThreadwrk - Ein neuer Worker, der von diesem
WorkerThread abgearbeitet werden soll.public boolean isBusy()
true) oder frei ist (false).
isBusy in class WorkerThreadtrue falls diese
WorkerThread gerade mit der Ausführung eines
Workers beschäftigt ist, false
sonst.public void deactivate()
WorkerThread an, sich selbst sanft
zu beenden. Falls gerade ein Worker in Bearbeitung ist,
erfolgt die Beendigung erst nach dieser Bearbeitung.
deactivate in class WorkerThreadpublic void run()
java.lang.Thread.run().
run in interface java.lang.Runnablerun in class WorkerThreadpublic java.lang.String toString()
toString in class WorkerThread
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||