GThread(const GThread&) | |
GThread(const Text_t* name, GThread_foo foo, void* arg = 0, bool detached = false, bool detach_on_exit = false) | |
virtual | ~GThread() |
static void | BlockAllSignals() |
static void | BlockSignal(GThread::Signal sig) |
int | Cancel() |
static void | CancelAllThreads(bool join_p) |
static GThread::CState | CancelOff() |
static GThread::CState | CancelOn() |
static TClass* | Class() |
void | CleanupPop(bool execute_p) |
void | CleanupPush(GThread_cu_foo foo, void* arg) |
bool | ClearDetachOnExit() |
void | ClearRootTThreadRepresentation() |
int | Detach() |
static void | Exit(void* ret = 0) |
static void | FiniMain() |
bool | GetDetachOnExit() |
pthread_t | GetId() |
int | GetIndex() |
static int | GetMinStackSize() |
const Text_t* | GetName() const |
int | GetNice() |
GThread::RState | GetRunningState() |
int | GetStackSize() |
void* | GetStartArg() |
GThread_foo | GetStartFoo() |
GThread::TerminalPolicy | GetTerminalPolicy() const |
static GThread* | InitMain() |
static void | InvalidatePtr(GThread*& thr) |
virtual TClass* | IsA() const |
bool | IsDetached() const |
static bool | IsValidPtr(GThread* thr) |
int | Join(void** tret = 0) |
int | Kill(GThread::Signal signal = SigSTOP) |
static void | ListSignalState() |
static void | ListThreads() |
static ZMIR* | MIR() |
GThread& | operator=(const GThread&) |
static ZMirEmittingEntity* | Owner() |
static const char* | RunningStateName(GThread::RState state) |
static GThread* | Self() |
static GThread::CState | SetCancelState(GThread::CState s) |
static GThread::CType | SetCancelType(GThread::CType t) |
static GThread_sh_foo | SetDefaultSignalHandler(GThread_sh_foo foo) |
void | SetDetachOnExit(bool detachonexit) |
static void | SetMinStackSize(int ss) |
void | SetName(const Text_t* s) |
void | SetNice(int nice) |
static GThread_sh_foo | SetSignalHandler(GThread::Signal sig, GThread_sh_foo foo, bool unblock = false) |
void | SetStackSize(int stacksize) |
void | SetStartArg(void* startarg) |
void | SetStartFoo(GThread_foo startfoo) |
void | SetTerminalPolicy(GThread::TerminalPolicy tp) |
virtual void | ShowMembers(TMemberInspector& insp) |
static const char* | SignalName(GThread::Signal sig) |
int | Spawn() |
virtual void | Streamer(TBuffer& b) |
void | StreamerNVirtual(TBuffer& b) |
TString | StrName() const |
static GThread::Signal | SysToGledSignal(Int_t sys_sig) |
static void | TestCancel() |
static void | TheSignalHandler(GSignal* sig) |
static void | ToRootsSignalHandler(GSignal* sig) |
static void | UnblockCpuExceptionSignals(bool unblock_fpe) |
static void | UnblockSignal(GThread::Signal sig) |
static int | Yield() |
GThread(const Text_t* name) | |
ZMIR* | get_mir() const |
ZMirEmittingEntity* | get_owner() const |
void | set_mir(ZMIR* mir) |
void | set_owner(ZMirEmittingEntity* owner) |
static void | thread_reaper(void* arg) |
static void* | thread_spawner(void* arg) |
static unsigned int | TSD_Self | |
bool | bDetachOnExit | X{gs} |
bool | bDetached | |
list<GThread::Cleanup,allocator<GThread::Cleanup> > | mCleanups | |
pthread_t | mId | X{g} This will become GThreadInternalRep* |
int | mIndex | X{g} |
ZMIR* | mMIR | |
TString | mName | X{Gs} |
int | mNice | X{gs} |
ZMirEmittingEntity* | mOwner | |
TThread* | mRootTThread | |
GThread::RState | mRunningState | X{g} |
GThread_sh_foo | mSigHandlerDefault | |
vector<void*> | mSigHandlerVector | |
int | mStackSize | X{gs} |
void* | mStartArg | X{gs} |
GThread_foo | mStartFoo | X{gs} |
void* | mTerminalContext | |
GThread::TerminalPolicy | mTerminalPolicy | |
int | mTerminalSignal | |
list<GThread*,allocator<GThread*> >::iterator | mThreadListIt | |
static GMutex | sContainerLock | |
static GMutex | sDetachCtrlLock | |
static GThread* | sInvalidPtr | |
static GThread* | sMainThread | |
static int | sMinStackSize | |
static int | sSigMap[32] | |
static int | sThreadCount | |
static list<GThread*> | sThreadList | |
static map<unsigned long,GThread*> | sThreadMap |
Private constructor for wrapping of existing threads. Thread is put into 'Running' state, registered into the thread list and assigned an internal thread-index. The owner of the thread is set to 0.
Normal constructor. Thread is put into 'Incubating' state, registered into the thread list and assigned an internal thread-index. The owner of the thread is set be the same as the owner of the calling thread. Termination policy is also copied.
Wipe root's TThread representation of the calling thread. This is needed as root's TSD schema expects TThread representation does not exist for whatever it calls the main thread. So we wipe it from the Root application thread.
Unblock CPU exception signals SIGILL, SIGSEGV, SIGBUS and, if unblock_fpe is true, also SIGFPE.
Root remaps signals in an even funnier way, see TUnixSystem.cxx.