Função JetGetThreadStats
Aplica-se a: Windows | Windows Server
Função JetGetThreadStats
A função JetGetThreadStats recupera informações de desempenho do mecanismo de banco de dados para o thread atual. Várias chamadas podem ser usadas para coletar estatísticas que refletem a atividade do mecanismo de banco de dados nesse thread entre essas chamadas.
Windows Vista:JetGetThreadStats é introduzido no Windows Vista.
JET_ERR JET_API JetGetThreadStats(
__out void* pvResult,
__in unsigned long cbMax
);
Parâmetros
pvResult
O buffer de saída que recebe os dados de estatísticas de thread. O buffer contém uma estrutura JET_THREADSTATS após uma chamada bem-sucedida.
cbMax
O tamanho máximo em bytes do buffer de saída.
Valor Retornado
Essa função retorna o tipo de dados JET_ERR com um dos seguintes códigos de retorno. Para obter mais informações sobre os possíveis erros de ESE, consulte Erros extensíveis do mecanismo de armazenamento e parâmetros de tratamento de erros.
Código de retorno |
Descrição |
---|---|
JET_errSuccess |
A operação foi concluída com sucesso. |
JET_errBufferTooSmall |
A operação falhou porque o buffer de saída fornecido era muito pequeno para conter os dados solicitados. A função JetGetThreadStats retornará esse erro quando o buffer de saída for muito pequeno para conter a menor versão da estrutura de JET_THREADSTATS compatível com o mecanismo de banco de dados. |
Em caso de êxito, o buffer de saída conterá uma estrutura JET_THREADSTATS que contém estatísticas do mecanismo de banco de dados para o thread atual.
Em caso de falha, o estado do buffer de saída é indefinido.
Comentários
As informações fornecidas por duas chamadas consecutivas dessa API destinam-se a ser usadas para calcular a despesa de qualquer outra operação do mecanismo de banco de dados no thread atual. Em geral, isso é feito usando um antes e depois da leitura das estatísticas e subtraindo a contagem posterior da contagem anterior para obter a contagem líquida de operações executadas.
Por exemplo, um aplicativo pode chamar JetGetThreadStats uma vez para obter uma leitura inicial das estatísticas para o thread atual. Em seguida, ele pode chamar a função JetMove com o parâmetro cRow definido como JET_MoveNext para passar para a próxima entrada de índice em um índice. Em seguida, ele pode chamar JetGetThreadStats novamente para obter outra leitura das estatísticas do thread. Em seguida, ele pode subtrair o contador cPageReferenced da segunda leitura do primeiro. O resultado seria o número de páginas de banco de dados referenciadas pelo mecanismo de banco de dados para executar a operação JetMove .
As estatísticas de cada thread são acumuladas durante o tempo de vida desse thread. As estatísticas serão redefinidas se a DLL do mecanismo de banco de dados for descarregada do processo de host.
A estrutura JET_THREADSTATS provavelmente será expandida no futuro para conter mais estatísticas. Novas estatísticas serão adicionadas ao final da estrutura e poderão ser recuperadas com um tamanho de buffer de saída maior. A presença de estatísticas adicionais pode ser inferida por um valor cbStruct maior.
Requisitos
Requisito | Valor |
---|---|
Cliente |
Requer o Windows Vista. |
Servidor |
Requer o Windows Server 2008. |
Cabeçalho |
Declarado em Esent.h. |
Biblioteca |
Use ESENT.lib. |
DLL |
Requer ESENT.dll. |