Поделиться через


структура 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

Имя функции ControlCallback , которую PERFLIB вызывает для уведомления о запросах потребителей, таких как запрос на добавление или удаление счетчиков из запроса. Задайте этот элемент, если атрибут обратного вызова элемента поставщика является "custom" или вы использовали аргумент -NotificationCallback при вызове CTRPP. В противном случае — NULL.

MemAllocRoutine

Имя функции AllocateMemory , которую PERFLIB вызывает для выделения памяти. Установите этот элемент, если при вызове CTRPP использовался аргумент -MemoryRoutines. В противном случае — NULL.

MemFreeRoutine

Имя функции FreeMemory , которую PERFLIB вызывает для освобождения памяти, выделенной функцией AllocateMemory . Значение должно иметь значение NULL , если MemAllocRoutine имеет значение NULL.

pMemContext

Сведения о контексте, передаваемые в подпрограммы выделения памяти и бесплатные процедуры. Может иметь значение NULL.

Комментарии

По умолчанию PERFLIB использует кучу процессов. Выделение памяти и бесплатные подпрограммы позволяют обеспечить пользовательское управление памятью.

Требования

Требование Значение
Минимальная версия клиента Windows Vista [только классические приложения]
Минимальная версия сервера Windows Server 2008 [только классические приложения]
Верхняя часть perflib.h

См. также раздел

PerfStartProviderEx