|
| PThread2Arg (Arg1Type arg1, Arg2Type arg2, FnType function, bool autoDel=false, const char *name=NULL, PThread::Priority priority=PThread::NormalPriority) |
|
| ~PThread2Arg () |
|
virtual void | Main () |
| User override function for the main execution routine of the thread. More...
|
|
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...
|
|
|
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
} |
|
| PObject () |
| Constructor for PObject, made protected so cannot ever create one on its own. More...
|
|