pm_set_program_pthread 子例程
用途
设置目标 pthread 的性能监视器程序化。
库
性能监视器 API 库 (libpmapi.a)
语法
描述
pm_set_program_pthread 子例程设置目标 pthread 的性能监视器程序化。 pthread 必须停止,并且必须是 debuggee 进程的一部分,在调用进程的控制下。 此设置包括要计数的事件以及要计数的方式。 要计数的事件位于事件标识列表中。 必须从 pm_inititialize 子例程返回的列表中选择标识。
如果 pthread 以 1: 1 方式运行,那么必须仅指定 tid 参数。 如果 pthread 以 m: n 方式运行,那么必须仅指定 ptid 参数。 如果同时指定了 ptid 和 tid 参数,那么它们必须引用具有指定的 ptid 参数的单个 pthread ,并且当前正在具有指定的 tid 参数的内核线程上运行。
计数方式包括用户方式和/或内核方式以及初始计数状态。 对于 "用户方式" 和 "内核方式" ,缺省值设置为 "关闭" ,而 "初始缺省状态" 设置为延迟计数,直到调用 pm_start_pthread 子例程为止。
如果该列表包含可与阈值一起使用的事件 (如 pm_initialize 子例程所指示) ,那么还可以指定阈值。
参数
| 项 | 描述 |
|---|---|
| pid | 目标 pthread 的进程标识。 目标进程必须是调用者进程的调试器。 |
| tid | 目标 pthread 的线程标识。 要忽略此参数,请将其设置为 0。 |
| ptid | 目标 pthread 的 pthread 标识。 要忽略此参数,请将其设置为 0。 |
| * 程序 | 指定要在 "性能监视器" 设置中使用的事件方式。 支持以下方式:
|
返回值
| 项 | 描述 |
|---|---|
| 0 | 操作成功完成。 |
| Positive error code | 请参阅 pm_error 子例程 以解码错误代码。 |
错误代码
请参阅 pm_error 子例程。
文件
| 项 | 描述 |
|---|---|
| /usr/include/pmapi.h | 定义标准宏,数据类型和子例程。 |