perfstat_thread_util Subroutine
Propósito
Calcula métricas de utilização de thread.
Biblioteca
Biblioteca perfstat (libperfstat.a)
Sintaxe
#include <libperfstat.h>
int perfstat_thread_util (data,userbuff,sizeof_userbuff,desired_number)
perfstat_rawdata_t* data;
perfstat_thread_t* userbuff;
int sizeof_userbuff;
int desired_number; Descrição
A subroutine perfstat_thread_util fornece a interface para métricas de utilização de thread. A subroutine perfstat_thread recupera uma ou mais estatísticas de encadeamento do kernel para preencher a estrutura de dados perfstat_thread_t . A subroutina perfstat_thread_util usa os valores atuais e anteriores para calcular as métricas de utilização.
Se os parâmetros name e userbuff forem configurados para NULL e o parâmetro sizeof_userbuff será configurado para 0, o tamanho da versão atual da estrutura de dados perfstat_thread_t será retornado.
Se o parâmetro desired_number for configurado para 0, o número de elementos atuais da estrutura de dados perfstat_rawdata_t será retornado.
Parâmetros
| Item | Descrição |
|---|---|
| data | Especifica que o parâmetro de dados é do tipo perfstat_rawdata_t. A estrutura de dados perfstat_rawdata_t usa os valores atuais e os anteriores para calcular as métricas de utilização. |
| userbuff | Aponta para a área de memória que é preenchida com uma ou mais estruturas de dados perfstat_thread_t . |
| sizeof_userbuff | Especifica o tamanho da estrutura de dados perfstat_thread_t . Nota: Para obter o tamanho da versão mais recente da estrutura de dados perfstat_thread_t , configure o parâmetro sizeof_userbuff para 0, e o parâmetro name e userbuff para NULL.
|
| desired_number | Especifica o número de estruturas de dados perfstat_thread_t para copiar para o parâmetro userbuff . |
Valores De Retorno
A menos que a subroutine perfstat_thread_util seja usada para recuperar o número de estruturas disponíveis, o número de estruturas preenchidas é devolvido mediante conclusão bem-sucedida. Se não for bem-sucedido, um valor de -1 é retornado e a variável global errno é definida.
Códigos De Erro
A subroutine não é bem-sucedida se o seguinte for verdadeiro:
| Item | Descrição |
|---|---|
| EINVAL | Um dos parâmetros não é válido. |
Arquivos
O arquivo libperfstat.h define macros, tipos de dados e sub-rotinas padrão.