Reports the information associated with a pthread.
pthread debug library (libpthdebug.a)
#include <sys/pthdebug.h>
int pthdb_pthread_arg (pthdb_session_t session,
pthdb_pthread_t pthread,
pthdb_addr_t * argp)
int pthdb_pthread_addr (pthdb_session_t session,
pthdb_pthread_t pthread,
pthdb_addr_t *addrp)
int pthdb_pthread_cancelpend (pthdb_session_t session,
pthdb_pthread_t pthread,
int * cancelpendp)
int pthdb_pthread_cancelstate (pthdb_session_t session,
pthdb_pthread_t pthread,
pthdb_cancelstate_t * cancelstatep)
int pthdb_pthread_canceltype (pthdb_session_t session,
pthdb_pthread_t pthread,
pthdb_canceltype_t * canceltypep)
int pthdb_pthread_detachstate (pthdb_session_t session,
pthdb_pthread_t pthread,
pthdb_detachstate_t * detachstatep)
int pthdb_pthread_exit (pthdb_session_t session,
pthdb_pthread_t pthread,
pthdb_addr_t * exitp)
int pthdb_pthread_func (pthdb_session_t session,
pthdb_pthread_t pthread,
pthdb_addr_t * funcp)
int pthdb_pthread_ptid (pthdb_session_t session,
pthdb_pthread_t pthread,
pthread_t * ptidp)
int pthdb_pthread_schedparam (pthdb_session_t session,
pthdb_pthread_t pthread,
struct sched_param * schedparamp);
int pthdb_pthread_schedpolicy (pthdb_session_t session,
pthdb_pthread_t pthread,
pthdb_schedpolicy_t * schedpolicyp)
int pthdb_pthread_schedpriority (pthdb_session_t session,
pthdb_pthread_t pthread,
int * schedpriorityp)
int pthdb_pthread_scope (pthdb_session_t session,
pthdb_pthread_t pthread,
pthdb_scope_t * scopep)
int pthdb_pthread_state (pthdb_session_t session,
pthdb_pthread_t pthread,
pthdb_state_t * statep)
int pthdb_pthread_suspendstate (pthdb_session_t session,
pthdb_pthread_t pthread,
pthdb_suspendstate_t * suspendstatep)
int pthdb_ptid_pthread (pthdb_session_t session,
pthread_t ptid,
pthdb_pthread_t * pthreadp)
pthdb_pthread_arg reports the initial argument passed to the pthread's start function.
pthdb_pthread_addr reports the address of the pthread_t.
pthdb_pthread_cancelpend reports non-zero if cancellation is pending on the pthread; if not, it reports zero.
pthdb_pthread_cancelstate reports whether cancellation is enabled (PCS_ENABLE) or disabled (PCS_DISABLE). PCS_NOTSUP is reserved for unexpected results.
pthdb_pthread_canceltype reports whether cancellation is deferred (PCT_DEFERRED) or asynchronous (PCT_ASYNCHRONOUS). PCT_NOTSUP is reserved for unexpected results.
pthdb_pthread_detachstate reports whether the pthread is detached (PDS_DETACHED) or joinable (PDS_JOINABLE). PDS_NOTSUP is reserved for unexpected results.
pthdb_pthread_exit reports the exit status returned by the pthread via pthread_exit. This is only valid if the pthread has exited (PST_TERM).
pthdb_pthread_func reports the address of the pthread's start function.
pthdb_pthread_ptid reports the pthread identifier (pthread_t) associated with the pthread.
pthdb_pthread_schedparam reports the pthread's scheduling parameters. This currently includes policy and priority.
pthdb_pthread_schedpolicy reports whether the pthread's scheduling policy is other (SP_OTHER), first in first out (SP_FIFO), or round robin (SP_RR). SP_NOTSUP is reserved for unexpected results.
pthdb_pthread_schedpriority reports the pthread's scheduling priority.
pthdb_pthread_scope reports whether the pthread has process scope (PS_PROCESS) or system scope (PS_SYSTEM). PS_NOTSUP is reserved for unexpected results.
pthdb_pthread_state reports whether the pthread is being created (PST_IDLE), currently running (PST_RUN), waiting on an event (PST_SLEEP), waiting on a cpu (PST_READY), or waiting on a join or detach (PST_TERM). PST_NOTSUP is reserved for unexpected results.
pthdb_pthread_suspendstate reports whether the pthread is suspended (PSS_SUSPENDED) or not (PSS_UNSUSPENDED). PSS_NOTSUP is reserved for unexpected results.
pthdb_ptid_pthread reports the pthread for the ptid.
Item | Description |
---|---|
addr | pthread address |
argp | Initial argument buffer. |
cancelpendp | Cancel pending buffer. |
cancelstatep | Cancel state buffer. |
canceltypep | Cancel type buffer. |
detachstatep | Detach state buffer. |
exitp | Exit value buffer. |
funcp | Start function buffer. |
pthread | pthread handle. |
pthreadp | Pointer to pthread handle. |
ptid | pthread identifier |
ptidp | pthread identifier buffer. |
schedparamp | Scheduling parameters buffer. |
schedpolicyp | Scheduling policy buffer. |
schedpriorityp | Scheduling priority buffer. |
scopep | Contention scope buffer. |
session | Session handle. |
statep | State buffer. |
suspendstatep | Suspend state buffer. |
If successful, these functions return PTHDB_SUCCESS, else an error code is returned.
Error Codes
Item | Description |
---|---|
PTHDB_BAD_SESSION | Invalid session handle. |
PTHDB_BAD_PTHREAD | Invalid pthread handle. |
PTHDB_BAD_POINTER | Invalid buffer pointer. |
PTHDB_BAD_PTID | Invalid ptid. |
PTHDB_CALLBACK | Debugger call back error. |
PTHDB_NOTSUP | Not supported. |
PTHDB_INTERNAL | Error in library. |