Freigeben über


EnableThreadProfiling-Funktion (winbase.h)

Aktiviert die Threadprofilerstellung für den angegebenen Thread.

Syntax

DWORD EnableThreadProfiling(
  [in]  HANDLE  ThreadHandle,
  [in]  DWORD   Flags,
  [in]  DWORD64 HardwareCounters,
  [out] HANDLE  *PerformanceDataHandle
);

Parameter

[in] ThreadHandle

Das Handle für den Thread, für den Sie die Profilerstellung aktivieren möchten. Dies muss der aktuelle Thread sein.

[in] Flags

Legen Sie diesen Parameter auf THREAD_PROFILING_FLAG_DISPATCH fest, um Threadprofilerstellungsdaten wie die Anzahl der Kontextswitches zu empfangen. andernfalls auf 0 festgelegt.

[in] HardwareCounters

Um Hardwareleistungsindikatordaten zu empfangen, legen Sie diesen Parameter auf eine Bitmaske fest, die die zu erfassenden Hardwareindikatoren identifiziert. Sie können bis zu 16 Leistungsindikatoren angeben. Jedes Bit bezieht sich direkt auf den nullbasierten Hardwarezählerindex für die von Ihnen konfigurierten Hardwareleistungsindikatoren. Legen Sie auf Null fest, wenn Sie keine Hardwareindikatordaten sammeln. Wenn Sie ein Bit für einen Hardwarezähler festlegen, der nicht konfiguriert wurde, ist der Zählerwert, der für diesen Zähler gelesen wird, null.

[out] PerformanceDataHandle

Ein undurchsichtiges Handle, das Sie beim Aufrufen der Funktionen ReadThreadProfilingData und DisableThreadProfiling verwenden.

Rückgabewert

Gibt ERROR_SUCCESS zurück, wenn der Aufruf erfolgreich ist. andernfalls ein Systemfehlercode (siehe Winerror.h).

Hinweise

Sie müssen die DisableThreadProfiling-Funktion aufrufen, bevor Sie den Thread beenden.

Zum Erstellen eines Profils für Hardwareleistungsindikatoren benötigen Sie einen Treiber zum Konfigurieren der Leistungsindikatoren. Die Leistungsindikatoren werden global für das System konfiguriert, sodass jeder Thread Zugriff auf die gleichen Hardwareindikatordaten hat. Die Leistungsindikatoren müssen konfiguriert werden, bevor Sie die Profilerstellung aktivieren. Informationen zum Konfigurieren von Hardwareleistungsindikatoren finden Sie in der KeSetHardwareCounterConfiguration-Funktion im Windows Driver Kit (WDK).

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 7 [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 R2 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile winbase.h (Windows.h einschließen)
Bibliothek Kernel32.lib
DLL Kernel32.dll

Siehe auch

DisableThreadProfiling

QueryThreadProfiling

ReadThreadProfilingData