|
||||||||||
| 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
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 | |
protected boolean |
m_bActive
Interne Variable, die darüber entscheidet, ob der WorkerThread aktiv bleibt, oder sich selbst
beenden soll. |
protected boolean |
m_bBusy
Gibt an, ob dieser WorkerThread gerade arbeitet
(true) oder frei ist (false). |
protected Monitor |
m_monSync
Dient als Monitor zur Synchronisation der Zuteilung und Abarbeitung der Worker. |
protected int |
m_nNumericID
Die fortlaufende Nummer dieses WorkerThreads. |
protected Semaphore |
m_sem
Die Semaphore des Pools. |
protected Worker |
m_wrkWorker
Der Worker dieses Threads. |
| Fields inherited from class java.lang.Thread |
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY |
| Constructor Summary | |
WorkerThread(Semaphore sem,
int nNumericID)
Konstruktor |
|
| Method Summary | |
void |
deactivate()
Weist diesen WorkerThread an, sich selbst sanft
zu beenden. |
boolean |
isBusy()
Gibt an, ob dieser WorkerThread gerade arbeitet ( true) oder frei ist (false). |
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 |
| Field Detail |
protected Worker m_wrkWorker
protected Semaphore m_sem
WorkerThread wieder erhöht werden, damit neue
Worker vom Pool angenommen werden können.
protected boolean m_bBusy
WorkerThread gerade arbeitet
(true) oder frei ist (false).
protected boolean m_bActive
WorkerThread aktiv bleibt, oder sich selbst
beenden soll.
protected Monitor m_monSync
Worker.
protected int m_nNumericID
| Constructor Detail |
public WorkerThread(Semaphore sem,
int nNumericID)
sem - Die Semaphore, die der ThreadPool
verwendet, um die Zahl der betriebenen
WorkerThreads zu kontrollieren.| Method Detail |
public void startWorker(Worker wrk)
wrk - Ein neuer Worker, der von diesem
WorkerThread abgearbeitet werden soll.public boolean isBusy()
true) oder frei ist (false).
true 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.
public void run()
java.lang.Thread.run().
public java.lang.String toString()
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||