PERF_PROVIDER_CONTEXT 结构 (perflib.h)

定义提供程序上下文信息。

语法

typedef struct _PROVIDER_CONTEXT {
  DWORD          ContextSize;
  DWORD          Reserved;
  PERFLIBREQUEST ControlCallback;
  PERF_MEM_ALLOC MemAllocRoutine;
  PERF_MEM_FREE  MemFreeRoutine;
  LPVOID         pMemContext;
} PERF_PROVIDER_CONTEXT, *PPERF_PROVIDER_CONTEXT;

成员

ContextSize

此结构的大小。

Reserved

保留。

ControlCallback

PERFLIB 调用以通知使用者请求的 ControlCallback 函数的名称,例如请求在查询中添加或删除计数器。 如果提供程序元素的回调属性为“custom”,或者在调用 CTRPP 时使用了 -NotificationCallback 参数,请设置此成员。 否则为 NULL

MemAllocRoutine

PERFLIB 调用以分配内存的 AllocateMemory 函数的名称。 如果在调用 CTRPP 时使用了 -MemoryRoutines 参数,请设置此成员。 否则为 NULL

MemFreeRoutine

PERFLIB 调用 的 FreeMemory 函数的名称,以释放 由 AllocateMemory 函数分配的内存。 如果 MemAllocRoutineNULL,则必须为 NULL

pMemContext

传递给内存分配和可用例程的上下文信息。 可以为 NULL

注解

默认情况下,PERFLIB 使用进程堆。 内存分配和可用例程允许你提供自定义内存管理。

要求

要求
最低受支持的客户端 Windows Vista [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 [仅限桌面应用]
标头 perflib.h

另请参阅

PerfStartProviderEx