![]() |
Gray C++ Libraries
0.0.2
A set of C++ libraries for MSVC, GNU on Windows, WinCE, Linux
|
#include <cJobThread.h>
Public Member Functions | |
| cJobThread () | |
| virtual | ~cJobThread () |
| STDMETHOD_ (cString, get_Name)() const | |
| cJobPtr | get_Job () const |
| void | AssignJob (cJobBase *pJob, cJobThreadMgr *pParentSet) |
| UNITTEST2_PREDEF (cJobThread) | |
Public Member Functions inherited from GrayLib::cThreadNamed< cJobThread > | |
| virtual HRESULT | CreateThread (DWORD dwCreationFlags=0) override |
Public Member Functions inherited from GrayLib::cThreadChecked | |
| cThreadChecked () | |
| virtual | ~cThreadChecked () |
| virtual bool | CheckStuckThread (TIMESYSD_t iMilliSecTilStuck, bool bTerminateAndRestart) |
| called by external thread. More... | |
| UINT | get_ThreadTicks () const |
| bool | isCriticalWait () const |
| void | ChangeCriticalWait (int iDelta) |
Public Member Functions inherited from GrayLib::cThread | |
| cThread () | |
| virtual | ~cThread () |
| bool | isValidThreadHandle () const noexcept |
| THREADID_t | get_HashCode () const noexcept |
| virtual bool | isValidCheck () const noexcept |
| < memory allocation and structure definitions are valid. More... | |
| STDMETHOD_ (cString, get_Name)() const | |
| override memory allocation and structure definitions are valid. More... | |
| bool | isThreadSleeping () const noexcept |
| THREAD_EXITCODE_t | get_ExitCodeThread () const |
| int | get_ThreadPriority () const |
| bool | put_ThreadPriority (int nPriority) |
| bool | SuspendThread () |
| bool | ResumeThread () |
| virtual HRESULT | SleepThread (TIMESYSD_t dwWaitMillisec=1, bool bAlertable=false) |
| virtual void | WakeThread () |
| virtual bool | RequestStopThread (bool bWillWait=false) noexcept override |
| bool | ExitCurrentThread (THREAD_EXITCODE_t nExitCode=THREAD_EXITCODE_OK) |
| bool | WaitForThreadExit (TIMESYSD_t nMilliSec=cTimeSys::k_FREQ) |
| THREAD_EXITCODE_t | WaitForThreadExitCode (TIMESYSD_t iTimeMSec=cTimeSys::k_FREQ) |
| bool | TerminateThread (THREAD_EXITCODE_t iExitCode=THREAD_EXITCODE_ERR, TIMESYSD_t nMilliSec=0) |
| void | AttachToCurrentThread () |
| HRESULT | CreateThread (THREAD_FUNC_t pEntryProc, void *pArgs, DWORD dwCreationFlags=0) |
| void | CloseThread () |
Public Member Functions inherited from GrayLib::cThreadBase | |
| cThreadBase () noexcept | |
| virtual | ~cThreadBase () |
Public Member Functions inherited from Gray::CObject | |
| virtual | ~CObject () |
| virtual void | AssertValid () const |
| < memory allocation and structure definitions are valid. More... | |
| virtual void | Serialize (cArchive &a) |
Public Member Functions inherited from Gray::cThreadId | |
| cThreadId (THREADID_t nThreadId=k_NULL) noexcept | |
| THREADID_t | GetThreadId () const noexcept |
| THREADID_t | get_HashCode () const noexcept |
| bool | isCurrentThread () const noexcept |
| bool | isValidId () const noexcept |
| void | InitCurrentId () noexcept |
Public Member Functions inherited from Gray::cRefBase | |
| cRefBase (int iRefCount=0) noexcept | |
| virtual | ~cRefBase () |
| int | get_RefCount () const noexcept |
| HASHCODE_t | get_HashCode () const noexcept |
| STDMETHOD_ (HASHCODE_t, get_HashCodeX)() const noexcept | |
| virtual void | onFinalRelease () |
| bool | isValidObj () const noexcept |
| STDMETHOD_ (ULONG, AddRef)(void) override | |
| STDMETHOD_ (ULONG, Release)(void) override | |
| STDMETHOD() | QueryInterface (const IID &riid, void __RPC_FAR *__RPC_FAR *ppvObject) override |
| void | IncRefCount () |
| void | DecRefCount () |
| bool | isStaticConstruct () const noexcept |
| void | StaticConstruct () |
| void | StaticDestruct () |
| bool | isDestructing () noexcept |
| void | SetDestructing () |
Public Member Functions inherited from Gray::cThreadState | |
| cThreadState () noexcept | |
| bool | isThreadRunning () const noexcept |
| bool | isThreadStopping () const noexcept |
Protected Member Functions | |
| virtual bool | ThreadTick () override |
Protected Member Functions inherited from GrayLib::cThreadChecked | |
| virtual void | onThreadCreate () override |
| Notification that the thread has started or stopped. More... | |
Protected Member Functions inherited from GrayLib::cThread | |
| virtual THREAD_EXITCODE_t | Run () |
| WorkerThreadProc. More... | |
| THREAD_EXITCODE_t | RunDirectly () |
| virtual void | onThreadExit (THREAD_EXITCODE_t nExitCode) |
| OnExit. More... | |
| void | onThreadTerminated (THREAD_EXITCODE_t nExitCode) |
Additional Inherited Members | |
Static Public Member Functions inherited from GrayLib::cThreadChecked | |
| static cThreadChecked *GRAYCALL | GetCurrentThreadChecked () |
Static Public Member Functions inherited from GrayLib::cThread | |
| static cThread *GRAYCALL | GetCurrentThread () |
| static bool GRAYCALL | IsCurrentThreadStopping () |
| static void GRAYCALL | RequestStopThreadArray (bool bWillWait, cThread **ppThreads, size_t nThreads) |
| static void GRAYCALL | TerminateThreadArray (THREAD_EXITCODE_t nExitCode, TIMESYSD_t iTimeMSec, cThread **ppThreads, size_t nThreads) |
Static Public Member Functions inherited from Gray::cThreadId | |
| static THREADID_t | GetCurrentId () noexcept |
| static bool | IsValidId (THREADID_t id) noexcept |
| static bool | IsEqualId (THREADID_t a, THREADID_t b) noexcept |
| static void | SleepCurrent (TIMESYS_t uMs=cTimeSys::k_FREQ) noexcept |
Public Attributes inherited from GrayLib::cThreadChecked | |
| UINT | m_nThreadTicksLast |
| checked periodically by outside observer. More... | |
| cTimeSys | m_tStart |
| When did thread first run ? More... | |
| TIMESYS_t | m_timeLastChanged |
| Last outside detected tick change time. More... | |
| UINT | m_nRecoveryStage |
| What have we done about being stuck ? More... | |
Static Public Attributes inherited from Gray::cThreadId | |
| static const THREADID_t | k_NULL = 0 |
| Not a valid thread Id. More... | |
Static Protected Member Functions inherited from GrayLib::cThreadNamed< cJobThread > | |
| static THREAD_EXITCODE_t _stdcall | EntryProc (void *pThisThread) |
Static Protected Member Functions inherited from GrayLib::cThread | |
| static THREAD_EXITCODE_t _stdcall | EntryProc (void *pThisThread) |
| _WorkerThreadProc More... | |
Protected Attributes inherited from GrayLib::cThreadChecked | |
| UINT | m_nThreadTicks |
| periodically increment this to make sure the thread is alive! More... | |
Protected Attributes inherited from GrayLib::cThread | |
| bool | m_bThreadSleeping |
| Idle worker threads waiting for something to do. inside Sleep() or WaitForSingleObject() More... | |
| bool | m_bThreadSuspended |
| May be resumed. inside Suspend() -> Resume() More... | |
Protected Attributes inherited from GrayLib::cThreadBase | |
| THREADHANDLE_t | m_hThread |
| there may be many handles to the same THREADID_t in _WIN32. I must call CloseThread() on this. More... | |
Protected Attributes inherited from Gray::cThreadId | |
| THREADID_t | m_dwThreadId |
| unique thread id. i.e. stack base pointer. (Use the MFC name) More... | |
Protected Attributes inherited from Gray::cThreadState | |
| bool | m_bThreadRunning |
| called CreateThread() onThreadCreate(), and inside Run(), until onThreadExit() More... | |
| volatile bool | m_bThreadStopping |
| trying to stop the thread nicely. Do this before TerminateThread() More... | |
A thread that may be in use (to run a cJobBase) or shared in a pool to be re-used when idle. for randomly periodic jobs.
| GrayLib::cJobThread::cJobThread | ( | ) |
|
virtual |
|
inline |
This thread/fiber is now running a job.
|
inline |
Get the current active job. if any.
|
inline |
|
overrideprotectedvirtual |
Take a job off the job queue and execute it.
Reimplemented from GrayLib::cThreadChecked.
| GrayLib::cJobThread::UNITTEST2_PREDEF | ( | cJobThread | ) |