DCE for the HP e3000 (B3821-90003)

28 Chapter3
Threads Architecture on MPE/iX
Threads Architecture
Breakpoints.
There are three types of breakpoints available when debugging a
threaded program:
Breakpoint Type Description
Task-Wide Breakpoints that are recognized by any
thread within a task.
Thread-Specific Breakpoints that are identical to
pin-specific breakpoints, but are
thread-private, and are specified using
an enhanced syntax.
Stop-All-Threads Breakpoints with this option, when
encountered by a thread within a
threaded task suspend all other
threads within the task until a
CONTINUE command is issued.
The syntax for the address and pin parameters to breakpoint
commands includes the specification:
logaddr [:pin|:@]
and the following for threads:
logaddr [:[[init_thread_pin].tin |.@][:@]]
where
tin
is the thread number returned by pthread_create. The pin
number of the initial thread can be obtained using SHOWPROC. The
syntax [init_thread_pin].
tin
specifies a thread,
[init_thread_pin].@ specifies a task-wide breakpoint, and :@
following a [init_thread_pin].
tin
specification specifies a
stop-all-threads breakpoint option.
For example:
Example Breakpoint Description
B thd_mtx:2e.2 Sets a breakpoint at thd_mtx to be
recognized by tin 2 of the task with
initial thread 2e.
B thd_mtx:.2 Sets a breakpoint at thd_mtx to be
recognized by tin 2 of the current task.
B start_thread:2c.@ Sets a task-wide breakpoint at
start_thread to be recognized by all
threads within the task with initial
thread 2c.
B start_thread:.@ Sets a task-wide breakpoint at
start_thread to be recognized by all
threads within the current task.