编程接口指南

抽样

利用本节中介绍的接口,可以将数据从计数器返回到应用程序。计数器数据驻留在名为 cpc_buf_t 的不透明数据结构中。此数据结构可用于捕获绑定集正在使用的计数器的状态快照,并且包括以下信息:

cpc_buf_t *cpc_buf_create(cpc_t *cpc, cpc_set_t *set);

int cpc_buf_destroy(cpc_t *cpc, cpc_buf_t *buf);

int cpc_set_sample(cpc_t *cpc, cpc_set_t *set, cpc_buf_t *buf);

cpc_buf_create() 函数可创建一个缓冲区,用于存储在 cpc_set_t 中指定的集中的数据。cpc_buf_destroy() 函数可释放与给定的 cpc_buf_t 关联的内存。cpc_buf_sample() 函数可捕获正在代表指定集进行计数的计数器的快照。指定集必须已绑定并且创建了缓冲区,然后才能调用 cpc_buf_sample() 函数。

在缓冲区中抽样不会更新与该集关联的请求的预设值。使用 cpc_buf_sample() 函数对某个缓冲区进行抽样,然后解除绑定并再次绑定时,计数将从请求的预设值开始,该预设值与初始 cpc_set_add_request() 函数调用中的值相同。