Compartilhar via


Método de IScheduler::Statistics

Fornece informações relacionadas a taxas de chegada e a conclusão da tarefa e alteração no comprimento da fila de um agendador.

virtual void Statistics(
   _Out_ unsigned int * pTaskCompletionRate,
   _Out_ unsigned int * pTaskArrivalRate,
   _Out_ unsigned int * pNumberOfTasksEnqueued
) =0;

Parâmetros

  • pTaskCompletionRate
    O número de tarefas concluídas pelo Agendador desde a última chamada para este método.

  • pTaskArrivalRate
    O número de tarefas que chegaram no Agendador desde a última chamada para este método.

  • pNumberOfTasksEnqueued
    O número total de tarefas em todas as filas do Agendador.

Comentários

Esse método é chamado pelo Gerenciador de recursos para coletar estatísticas para um programador.As estatísticas obtidas aqui serão usadas para algoritmos de comentário dinâmico para determinar quando é apropriado atribuir mais recursos para o Agendador e quando tirar recursos da unidade.Os valores fornecidos pelo Agendador podem ser otimistas e não têm necessariamente refletir com precisão a contagem atual.

Você deve implementar esse método se você deseja que o Gerenciador de recursos para usar comentários sobre coisas como chegada de tarefas para determinar como equilibrar recursos entre o Agendador e outros agendadores registrados com o Gerenciador de recursos.Se você optar por não coletar estatísticas, você pode definir a chave de política DynamicProgressFeedback o valor DynamicProgressFeedbackDisabled na diretiva do Agendador e o recurso Gerenciador não chamar este método no seu Agendador.

Ausência de informações estatísticas, Gerenciador de recursos irá usar níveis de assinatura de thread de hardware para tomar decisões de migração e alocação de recursos.Para obter mais informações sobre níveis de assinatura, consulte IExecutionResource::CurrentSubscriptionLevel.

Requisitos

Cabeçalho: concrtrm.h

Namespace: concorrência

Consulte também

Referência

Estrutura de IScheduler

Enumeração de PolicyElementKey

Método de IExecutionResource::CurrentSubscriptionLevel