Freigeben über


IScheduler::Statistics-Methode

Stellt Informationen zur Empfangs- und Abschlussrate von Aufgaben und zu Änderungen der Warteschlangenlänge eines Planers bereit.

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

Parameter

  • pTaskCompletionRate
    Die Anzahl von Aufgaben, die seit dem letzten Aufruf dieser Methode vom Planer abgeschlossen wurden.

  • pTaskArrivalRate
    Die Anzahl von Aufgaben, die seit dem letzten Aufruf dieser Methode im Planer empfangen wurden.

  • pNumberOfTasksEnqueued
    Die Gesamtzahl der Aufgaben in allen Planerwarteschlangen.

Hinweise

Diese Methode wird vom Ressourcen-Manager aufgerufen, um die Statistik für einen Planer zu erfassen. Die hier erfasste Statistik wird verwendet, um dynamische Feedbackalgorithmen auszuführen, um zu bestimmen, wann es angebracht ist, dem Planer weitere Ressourcen zuzuweisen, und wann Ressourcen entfernt werden sollen. Die vom Planer bereitgestellten Werte können optimistisch sein und müssen nicht notwendigerweise die aktuelle Anzahl genau reflektieren.

Sie sollten diese Methode implementieren, wenn Sie den Ressourcenmanager Feedback über solche Aufgaben wie Aufgabeneingang verwenden möchten, um festzustellen, wie Ressourcen zwischen dem Planer und anderen Planern ausgleicht, die mit den Ressourcen-Manager registriert werden. Wenn Sie keine Statistiken erfassen, können Sie in der Richtlinie des Planers den Richtlinienschlüssel DynamicProgressFeedback auf den Wert DynamicProgressFeedbackDisabled festlegen. Der Ressourcen-Manager ruft diese Methode dann nicht für den Planer auf.

In Ermangelung statistischer Informationen trifft der Ressourcen-Manager Ressourcenzuordnungs- und Migrationsentscheidungen ausgehend von Hardwarethreadabonnementebenen. Weitere Informationen zu Abonnementebenen finden Sie unter IExecutionResource::CurrentSubscriptionLevel.

Anforderungen

Header: concrtrm.h

Namespace: Parallelität

Siehe auch

Referenz

IScheduler-Struktur

PolicyElementKey-Enumeration

IExecutionResource::CurrentSubscriptionLevel-Methode