GSI Object Oriented Online Offline (Go4)
GO4-6.3.0
|
#include <TGo4Runnable.h>
Public Member Functions | |
TGo4Runnable (const TGo4Runnable &right) | |
TGo4Runnable (const char *name, TGo4ThreadManager *man) | |
virtual | ~TGo4Runnable () |
void | SetThread (TGo4Thread *gthread) |
TGo4Thread * | GetThread () const |
TGo4ThreadManager * | GetThreadManager () const |
Protected Member Functions | |
TGo4Runnable () | |
virtual Int_t | Run (void *ptr)=0 |
virtual Int_t | PreRun (void *ptr) |
virtual Int_t | PostRun (void *ptr) |
virtual void | ThreadCatch (TGo4Exception &ex) |
virtual void | UnexpectedCatch () |
Protected Attributes | |
TGo4ThreadManager * | fxManager {nullptr} |
TGo4Thread * | fxGo4Thread {nullptr} |
Friends | |
class | TGo4Thread |
Base class for all go4 runnables. Virtual method Run() is working in the thread, this must be overridden by the user runnables.
Definition at line 32 of file TGo4Runnable.h.
TGo4Runnable::TGo4Runnable | ( | const TGo4Runnable & | right | ) |
Definition at line 24 of file TGo4Runnable.cxx.
References GO4TRACE.
TGo4Runnable::TGo4Runnable | ( | const char * | name, |
TGo4ThreadManager * | man | ||
) |
Definition at line 32 of file TGo4Runnable.cxx.
|
virtual |
Definition at line 39 of file TGo4Runnable.cxx.
References GO4TRACE.
|
inlineprotected |
Definition at line 50 of file TGo4Runnable.h.
References PostRun(), PreRun(), Run(), ThreadCatch(), and UnexpectedCatch().
|
inline |
Definition at line 44 of file TGo4Runnable.h.
References fxGo4Thread.
Referenced by TGo4TaskHandlerRunnable::CheckStopBuffer(), TGo4StartException::Handle(), TGo4CreateException::Handle(), TGo4TaskHandlerAbortException::Handle(), TGo4CancelException::Handle(), TGo4RemoveException::Handle(), TGo4RestartException::Handle(), TGo4ReplaceException::Handle(), TGo4StatusRunnable::Run(), TGo4AnalysisMainRunnable::Run(), TGo4DataRunnable::Run(), TGo4LocalCommandRunnable::Run(), TGo4CommandRunnable::Run(), and TGo4TestRunnable::Run().
|
inline |
Definition at line 46 of file TGo4Runnable.h.
References fxManager.
Referenced by TGo4TerminateException::TGo4TerminateException(), and TGo4ThreadException::TGo4ThreadException().
|
protectedvirtual |
Function which is called once after the Run()method on threadstop
Reimplemented in TGo4AnalysisMainRunnable.
Definition at line 72 of file TGo4Runnable.cxx.
References TGo4Log::Debug(), and GO4TRACE.
Referenced by TGo4Runnable(), and TGo4Thread::Threadfunc().
|
protectedvirtual |
Function which is called once before the Run() method on threadstart
Reimplemented in TGo4AnalysisMainRunnable.
Definition at line 64 of file TGo4Runnable.cxx.
References TGo4Log::Debug(), and GO4TRACE.
Referenced by TGo4Runnable(), and TGo4Thread::Threadfunc().
|
protectedpure virtual |
The working function which runs in the thread
Implemented in TGo4TestRunnable, TGo4ConnectorRunnable, TGo4CommandRunnable, TGo4LocalCommandRunnable, TGo4TaskHandlerRunnable, TGo4DataRunnable, TGo4AnalysisMainRunnable, TGo4StatusRunnable, TGo4AnalysisWatchRunnable, TGo4ControllerRunnable, TGo4MainRunnable, TGo4LoggingRunnable, TGo4WatchRunnable, TGo4ObjConnectorRunnable, and TGo4HisConnectorRunnable.
Referenced by TGo4Runnable(), and TGo4Thread::Threadfunc().
|
inline |
Definition at line 42 of file TGo4Runnable.h.
References fxGo4Thread.
Referenced by TGo4Thread::TGo4Thread().
|
protectedvirtual |
catch for exceptions occurring in workfunc
Reimplemented in TGo4TestRunnable.
Definition at line 44 of file TGo4Runnable.cxx.
References TGo4Log::Debug(), fxGo4Thread, TGo4Thread::GetPID(), GO4TRACE, TGo4Exception::Handle(), and TGo4Exception::What().
Referenced by TGo4Runnable(), TGo4TestRunnable::ThreadCatch(), and TGo4Thread::Threadfunc().
|
protectedvirtual |
catch for all unexpected exceptions happening in workfunc
Reimplemented in TGo4TestRunnable.
Definition at line 53 of file TGo4Runnable.cxx.
References TGo4Log::Debug(), fxGo4Thread, fxManager, TGo4Thread::GetPID(), GO4TRACE, and TGo4ThreadManager::Terminate().
Referenced by TGo4Runnable(), and TGo4TestRunnable::UnexpectedCatch().
|
friend |
Definition at line 33 of file TGo4Runnable.h.
Referenced by TGo4TestRunnable::Run().
|
protected |
Backlink to thread which runs this. 1 1
Definition at line 75 of file TGo4Runnable.h.
Referenced by GetThread(), TGo4ObjConnectorRunnable::Run(), TGo4ConnectorRunnable::Run(), TGo4TestRunnable::Run(), SetThread(), ThreadCatch(), and UnexpectedCatch().
|
protected |
The threadmanager which is responsible for our thread. 1 0..*
Definition at line 70 of file TGo4Runnable.h.
Referenced by GetThreadManager(), TGo4WatchRunnable::Run(), TGo4MainRunnable::Run(), TGo4StatusRunnable::Run(), TGo4DataRunnable::Run(), TGo4CommandRunnable::Run(), TGo4TestRunnable::Run(), TGo4Runnable(), and UnexpectedCatch().