pm_set_program_thread 子例程

用途

设置目标线程的性能监视器程序化。

性能监视器 API 库 (libpmapi.a)

语法

#include <pmapi.h>  

int pm_set_program_thread ( pid,  tid,  *prog)
pid_t pid;
tid_t tid;
pm_prog_t *prog;

描述

此子例程仅支持 1: 1 线程技术模型。 它已被 pm_set_program_pthread 子例程取代,该子例程支持 1: 1 和 M: N 线程模型。 对此子例程的调用相当于使用等于 0 的 ptid 参数对 pm_set_program_pthread 子例程的调用。

pm_set_program_thread 子例程设置目标内核线程的性能监视器程序化。 线程必须在调用进程的控制下停止并且必须是 debuggee 进程的一部分。 此设置包括要计数的事件以及要计数的方式。 要计数的事件位于事件标识列表中。 必须从 pm_init 子例程返回的列表中选择标识。

计数方式包括用户方式和/或内核方式以及初始计数状态。 对于 "用户方式" 和 "内核方式" ,缺省值设置为 "关闭" ,而 "初始缺省状态" 设置为延迟计数,直到调用 pm_start_thread 子例程为止。

如果列表包含可与阈值一起使用的事件 (如 pm_init 子例程所指示) ,那么还可以指定阈值。

参数

描述
pid 目标线程的进程标识。 目标进程必须是调用者进程的调试器。
tid 目标线程的线程标识。
* 程序 指定要在 "性能监视器" 设置中使用的事件方式。 支持以下方式:
用户
以用户方式运行的进程计数 (缺省值设置为 "关闭")
PM_KERNEL
以内核方式运行的进程计数 (缺省值设置为 "关闭")
PM_COUNT
立即开始计数 (缺省值设置为 "不开始计数")

返回值

描述
0 操作成功完成。
正错误代码 请参阅 pm_error (pm_error Subroutine) 子例程以解码错误代码。

错误代码

请参阅 pm_error (pm_error Subroutine) 子例程。

文件

描述
/usr/include/pmapi.h 定义标准宏,数据类型和子例程。