RSiGetValue或RSiGetValuex子程序
用途
通过从 data_feed 包中抽取返回给定 SpmiStatVals 指针的数据值。 只有在验证已从由第一个参数标识的主机接收到 数据订阅源 包后,才应该从回调函数发出此子例程调用。
库
RSI 库 (libSpmi.a)
语法
#include sys/Rsi.h
float RSiGetValue(rhandle, svp)
RSiHandle rhandle;
struct SpmiStatVals *svp;
float RSiGetValuex(rhandlex, svp)
RSiHandlex rhandlex;
struct SpmiStatVals *svp;
描述
RSiGetValue, RSiGetValuex子程序提供以下操作:
- 根据子程序调用的第二个参数,在接收到的数据包中查找SpmiStatVals结构。 这涉及由 RSi 接口内部维护的表中的查找操作。
- 将数据字段的格式确定为 SiFloat 或 SiLong ,并根据其数据格式抽取数据值以进行进一步处理。
- 确定类型为 SiQuantity 或 SiCounter的值。 如果是前者,返回的数据值就是SpmiStatVals结构中的val字段。 如果找到后一种类型,那么子例程返回的值是 val_change 字段除以自前一个数据包的时间戳记以来经过的秒数。
该子程序是AIX®性能工具箱许可产品的一部分。
参数
- 处理
- 必须指向先前由 RSiOpen 子例程初始化的有效 RSiHandle 句柄。
- 汉德莱克斯
- 必须是先前由 RSiOpenx 子例程初始化的 RSiHandlex 句柄。
- 斯夫普
- 结构类型为 "SpmiStatVals的句柄,该句柄之前由成功调用RSiPathAddSetStat或RSiPathAddSetStatx子程序返回。
返回值
如果成功,子例程将返回非负值; 否则将返回小于或等于 -1.0的负值。 在外部字符数组 RSiEMsg 中放置 NULL 错误文本,而不考虑子例程的成功或失败。
错误代码
所有远程统计信息接口 (RSI) 子例程都使用外部变量来提供错误信息。 为了访问这些变量,应用程序必须定义下列外部变量:
- extern charRSiEMsg[];
- extern intRSiErrno;
如果子例程未返回错误,那么 RSiErrno 变量将设置为 RSiOkay ,并且 RSiEMsg 字符数组为空。 如果检测到错误,RSiErrno变量将根据枚举RSiErrorType定义返回一个错误代码。
文件
| 项 | 描述 |
|---|---|
| /usr/include/sys/Rsi.h | 声明应用程序可以用来访问 RSI 的子例程,数据结构,句柄以及宏。 |