perfstat_process_util 子例程

用途

计算流程利用率指标。

perfstat 库libperfstat.a

语法

#include <libperfstat.h>
int perfstat_process (data, userbuff, sizeof_userbuff, desired_number)
perfstat_id_t * data;
perfstat_process_t * userbuff;
int sizeof_userbuff ;
int desired_number ;

描述

perfstat_process_util子程序为进程利用率指标提供了接口。 perfstat_process子程序检索一个或多个进程统计数据,以填充perfstat_process_t数据结构。 perfstat_process_util子程序使用当前值和先前值计算与利用率相关的指标。 如果nameuserbuff参数设置为 NULL,且sizeof_userbuff 参数设置为 0,那么将返回当前版本perfstat_process_t数据结构的大小。 如果参数desired_number设置为 0,则将返回perfstat_rawdata_t数据结构中的当前元素数量。

参数

描述
DATA

指定数据参数的类型为perfstat_rawdata_tperfstat_rawdata_t 数据结构可以利用当前值和上一个值来计算与利用率相关的指标。

用户缓冲区

指定要填充一个或多个perfstat_process_t数据结构的内存区域。

大小用户缓冲区

指定perfstat_process_t数据结构的大小。

注意:要获取最新版本数据结构perfstat_process_t 的大小,请将参数sizeof_userbuff设为 0,将参数nameuserbuff设为 NULL。
期望数 (desired_number)

指定要复制到userbuff参数中的perfstat_process_t结构的个数。

返回值

除非使用perfstat_process_util子程序来获取可用结构数,否则成功完成后将返回已填充的结构数。 如果不成功,则返回值为-1并设置errno全局变量。

错误代码

如果以下错误代码为真,则perfstat_process_util子例程不成功:

描述
EINVAL 其中一个参数无效。

文件

libperfstat.h文件定义了标准宏、数据类型和子程序。