|
| virtual bool | Work ()=0 |
| |
| virtual void | Shutdown ()=0 |
| |
| virtual unsigned | GetWorkSize () const =0 |
| |
| | PDECLARE_MUTEX (m_workerMutex) |
| |
| bool | IsAutoDelete () const |
| |
| int | PXBlockOnChildTerminate (int pid, const PTimeInterval &timeout) |
| |
| int | PXBlockOnIO (int handle, int type, const PTimeInterval &timeout) |
| |
| void | PXAbortBlock () const |
| |
| void | PrintOn (ostream &strm) const |
| | Standard stream print function. More...
|
| |
| | P_DECLARE_TRACED_ENUM (Priority, LowestPriority, LowPriority, NormalPriority, HighPriority, HighestPriority) |
| | Codes for thread priorities. More...
|
| |
| | PThread (PINDEX stack, AutoDeleteFlag deletion=AutoDeleteThread, Priority priorityLevel=NormalPriority, const PString &threadName=PString::Empty()) |
| | Create a new thread instance. More...
|
| |
| | ~PThread () |
| | Destroy the thread, this simply calls the Terminate() function with all its restrictions and penalties. More...
|
| |
| virtual void | Restart () |
| | Restart a terminated thread using the same stack priority etc that was current when the thread terminated. More...
|
| |
| virtual void | Terminate () |
| | Terminate the thread. More...
|
| |
| virtual PBoolean | IsTerminated () const |
| | Determine if the thread has been terminated or ran to completion. More...
|
| |
| void | WaitForTermination () const |
| | Block and wait for the thread to terminate. More...
|
| |
| PBoolean | WaitForTermination (const PTimeInterval &maxWait) const |
| | Block and wait for the thread to terminate. More...
|
| |
| virtual void | Suspend (PBoolean susp=true) |
| | Suspend or resume the thread. More...
|
| |
| virtual void | Resume () |
| | Resume thread execution, this is identical to Suspend(false). More...
|
| |
| virtual PBoolean | IsSuspended () const |
| | Determine if the thread is currently suspended. More...
|
| |
| virtual void | SetPriority (Priority priorityLevel) |
| | Set the priority of the thread relative to other threads in the current process. More...
|
| |
| virtual Priority | GetPriority () const |
| | Get the current priority of the thread in the current process. More...
|
| |
| virtual void | SetAutoDelete (AutoDeleteFlag deletion=AutoDeleteThread) |
| | Set the flag indicating thread object is to be automatically deleted when the thread ends. More...
|
| |
| void | SetNoAutoDelete () |
| | Reet the flag indicating thread object is to be automatically deleted when the thread ends. More...
|
| |
| virtual PString | GetThreadName () const |
| | Get the name of the thread. More...
|
| |
| virtual void | SetThreadName (const PString &name) |
| | Change the name of the thread. More...
|
| |
| | PPROFILE_EXCLUDE (PThreadIdentifier GetThreadId() const ) |
| |
| | PPROFILE_EXCLUDE (static PThreadIdentifier GetCurrentThreadId()) |
| |
| | PPROFILE_EXCLUDE (PUniqueThreadIdentifier GetUniqueIdentifier() const ) |
| |
| | PPROFILE_EXCLUDE (static PUniqueThreadIdentifier GetCurrentUniqueIdentifier()) |
| |
| | PPROFILE_EXCLUDE (static PINDEX GetTotalCount()) |
| |
| | PPROFILE_EXCLUDE (bool GetTimes(Times ×)) |
| |
| | PPROFILE_EXCLUDE (static bool GetTimes(PThreadIdentifier id, Times ×)) |
| |
| | PPROFILE_EXCLUDE (static void GetTimes(std::vector< Times > ×)) |
| |
| __inline unsigned | GetTraceContextIdentifier () const |
| | Get PTRACE context identifier. More...
|
| |
| __inline void | SetTraceContextIdentifier (unsigned id) |
| |
| __inline void | SetTraceContextIdentifier (const PObject &obj) |
| |
| __inline void | SetTraceContextIdentifier (const PObject *obj) |
| |
| __inline void | CopyTraceContextIdentifier (PObject &obj) const |
| |
| __inline void | CopyTraceContextIdentifier (PObject *obj) const |
| |
| virtual | ~PObject () |
| |
| __inline const char * | GetClass () const |
| |
| __inline bool | IsClass (const char *name) const |
| |
| __inline const PObject * | PTraceObjectInstance () const |
| |
| virtual PObject * | Clone () const |
| | Create a copy of the class on the heap. More...
|
| |
| template<class CLS > |
| CLS * | CloneAs () const |
| | As for Clone() but converts to specified type. More...
|
| |
| virtual PINDEX | HashFunction () const |
| | This function yields a hash value required by the PDictionary class. More...
|
| |
| virtual Comparison | Compare (const PObject &obj) const |
| | Compare the two objects and return their relative rank. More...
|
| |
| virtual Comparison | CompareObjectMemoryDirect (const PObject &obj) const |
| | Determine the byte wise comparison of two objects. More...
|
| |
| bool | operator== (const PObject &obj) const |
| | Compare the two objects. More...
|
| |
| bool | operator!= (const PObject &obj) const |
| | Compare the two objects. More...
|
| |
| bool | operator< (const PObject &obj) const |
| | Compare the two objects. More...
|
| |
| bool | operator> (const PObject &obj) const |
| | Compare the two objects. More...
|
| |
| bool | operator<= (const PObject &obj) const |
| | Compare the two objects. More...
|
| |
| bool | operator>= (const PObject &obj) const |
| | Compare the two objects. More...
|
| |
| virtual void | ReadFrom (istream &strm) |
| | Input the contents of the object from the stream. More...
|
| |
|
| enum | AutoDeleteFlag { AutoDeleteThread,
NoAutoDeleteThread
} |
| | Codes for thread autodelete flag. More...
|
| |
| enum | Comparison { LessThan = -1,
EqualTo = 0,
GreaterThan = 1
} |
| | Result of the comparison operation performed by the Compare() function. More...
|
| |
| static bool | WaitAndDelete (PThread *&thread, const PTimeInterval &maxWait=10000, PMutex *mutex=NULL, bool lock=true) |
| | Wait for thread termination and delete object. More...
|
| |
| static void | Sleep (const PTimeInterval &delay) |
| | Suspend the current thread for the specified amount of time. More...
|
| |
| static PString | GetThreadName (PThreadIdentifier id) |
| | Get the name of the thread. More...
|
| |
| static PString | GetCurrentThreadName () |
| | Get the current threads name. More...
|
| |
| static PString | GetIdentifiersAsString (PThreadIdentifier tid, PUniqueThreadIdentifier uid) |
| | Convert to thread identifers as a string. More...
|
| |
| static void | GetTimes (std::list< Times > ×) |
| |
| static void | GetTimes (std::set< Times > ×) |
| |
| static int | GetPercentageCPU (Times &previousTimes, const PTimeInterval &period=PTimeInterval(0, 1), PThreadIdentifier id=PNullThreadIdentifier) |
| | Calculate the percentage CPU used over a period of time. More...
|
| |
| static unsigned | GetNumProcessors () |
| | Get number of processors, or processor cores, this machine has available. More...
|
| |
| static PThread * | Current () |
| | Get the currently running thread object instance. More...
|
| |
| static void | Yield () |
| | Yield to another thread without blocking. More...
|
| |
| static PThread * | Create (const PNotifier ¬ifier, INT parameter=0, AutoDeleteFlag deletion=AutoDeleteThread, Priority priorityLevel=NormalPriority, const PString &threadName=PString::Empty(), PINDEX stackSize=0) |
| | Create a simple thread executing the specified notifier. More...
|
| |
| static PThread * | Create (const PNotifier ¬ifier, const PString &threadName) |
| |
| static __inline void | CopyTraceContextIdentifier (PObject &to, const PObject &from) |
| |
| static __inline void | CopyTraceContextIdentifier (PObject &to, const PObject *from) |
| |
| static __inline void | CopyTraceContextIdentifier (PObject *to, const PObject &from) |
| |
| static __inline void | CopyTraceContextIdentifier (PObject *to, const PObject *from) |
| |
| static __inline const char * | Class () |
| |
| static __inline const PObject * | PTraceObjectInstance (const char *) |
| |
| static __inline const PObject * | PTraceObjectInstance (const PObject *obj) |
| |
| template<typename T > |
| static Comparison | Compare2 (T v1, T v2) |
| | Compare two types, returning Comparison type. More...
|
| |
| static Comparison | InternalCompareObjectMemoryDirect (const PObject *obj1, const PObject *obj2, PINDEX size) |
| | Internal function caled from CompareObjectMemoryDirect() More...
|
| |
| enum | Type { e_IsAutoDelete,
e_IsManualDelete,
e_IsProcess,
e_IsExternal
} |
| |
| enum PThread::Type | m_type |
| |
| PINDEX | m_originalStackSize |
| |
| PString | m_threadName |
| |
| PCriticalSection | m_threadNameMutex |
| |
| PThreadIdentifier | m_threadId |
| |
| PUniqueThreadIdentifier | m_uniqueId |
| |
| unsigned | m_traceContextIdentifier |
| |