| v2.10-0 (21000JUN2005) | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
Timer with main purpose to block the root
TApplication loop during thread execution. Moreover,
this timer calls Initialization() function of threadmanager,
which can be overridden by user to define any actions which should not
be run within a thread (critical root system calls, like opening TServerSocket,
should be done within the application loop, i.e. in the timer).
In threadmanager non-blocking-mode, Initialization() is called from timer
regularly with the period specified in threadmanager; in blocking mode
it is called once after each threadmanager UnBlockApp().
This timer is also responsible for proper termination of the threadmanager.
Field Summary | |
private Bool_t | fbApplicationRun |
protected static Int_t | fgiTERMWAITCYCLES On Termination, Notify will test fgiTERMWAITCYCLES times if Runnables are stopped, i.e. all TGo4Threads are in TCondition wait (safe cancelling point); afterwards, threads are deleted anyway |
protected static UInt_t | fguTERMWAIT time in ms to wait for all Runnables being stopped before Termination; after this time, the AllWaiting() of TGo4ThreadHandler is tested again, until the max number of testing cycles (fgiTERMWAITCYCLES) is reached; then Termination is done anyway |
private TCondition* | fxCondition |
protected TGo4ThreadManager* | fxManager Backlink to threadmanager who owns this timer. |
Fields inherited from class TTimer |
fTime, fAbsTime, fTimeout, fSync, fTimeID, fObject, fCommand |
Constructor Summary | |
| TGo4AppControlTimer(const TGo4AppControlTimer& right) |
| TGo4AppControlTimer(TGo4ThreadManager* manager, Long_t msperiod, Bool_t mode) |
private | TGo4AppControlTimer() |
Destructor Summary | |
virtual synchronized | ~TGo4AppControlTimer() |
Method Summary | |
Bool_t | GetApplicationRun() Status of the application run flag. |
const const TCondition* | GetCondition() Returns handle for internal condition which is used to block the gSystem. |
virtual Bool_t | Notify() Routine called from TTimer on timeout |
synchronized TGo4AppControlTimer& | operator=(const TGo4AppControlTimer& right) |
void | SetApplicationRun(Bool_t flag) Switches between blocking and non blocking mode of the timer. |
void | SetManager(TGo4ThreadManager* parent) Sets reference to new thread manager |
Methods inherited from class TTimer |
CheckTimer, GetCommand, GetObject, GetTime, GetTimerID, GetAbsTime, HasTimedOut, IsSync, IsAsync, Add, Remove, Reset, SetCommand, SetObject, SetTime, SetTimerID, Start, Stop, TurnOn, TurnOff, Timeout, SingleShot, Class, Class_Name, Class_Version, Dictionary, IsA, ShowMembers, Streamer, StreamerNVirtual, DeclFileName, ImplFileLine, ImplFileName, DeclFileLine |
Methods inherited from class TSysEvtHandler |
Notified, Added, Removed |
Field Detail |
private Bool_t fbApplicationRun
protected static Int_t fgiTERMWAITCYCLES
protected static UInt_t fguTERMWAIT
private TCondition* fxCondition
protected TGo4ThreadManager* fxManager
Constructor Detail |
public TGo4AppControlTimer(const TGo4AppControlTimer& right)
public TGo4AppControlTimer(TGo4ThreadManager* manager, Long_t msperiod, Bool_t mode)
private TGo4AppControlTimer()
Method Detail |
public virtual synchronized ~TGo4AppControlTimer()
Method Detail |
public Bool_t GetApplicationRun()
public const const TCondition* GetCondition()
public virtual Bool_t Notify()
public synchronized TGo4AppControlTimer& operator=(const TGo4AppControlTimer& right)
public void SetApplicationRun(Bool_t flag)
public void SetManager(TGo4ThreadManager* parent)
Association Links |
to Class TCondition
| J.Adamczewski, M.Al-Turany, D.Bertini, H.G.Essel, S.Linev | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |