Что такое функция Win32 API для приватных байтов? - PullRequest
5 голосов
/ 18 февраля 2009

Что такое функция Win32 API для приватных байтов (те, которые вы можете увидеть в perfmon).

Я бы хотел избежать .NET API

Ответы [ 3 ]

15 голосов
/ 18 февраля 2009
BOOL WINAPI GetProcessMemoryInfo(
  __in   HANDLE Process,
  __out  PPROCESS_MEMORY_COUNTERS ppsmemCounters,
  __in   DWORD cb
);

Где параметр ppsmemCounters может иметь структуру PROCESS_MEMORY_COUNTERS или PROCESS_MEMORY_COUNTERS_EX. Просто введите PROCESS_MEMORY_COUNTERS_EX до PROCESS_MEMORY_COUNTERS.

PROCESS_MEMORY_COUNTERS_EX.PrivateUsage - это то, что вы ищете.

Подробнее здесь и здесь

2 голосов
/ 18 февраля 2009

Вы можете собирать те же данные перфмон-шоу, используя API счетчиков производительности

0 голосов
/ 18 февраля 2009

Вы должны уточнить, что вы пытаетесь сделать. Это внутренние цифры, значение которых на самом деле не контролируется никакими API.

Технически частные байты - это плата за фиксацию, объем памяти, выделенный в файле подкачки для хранения содержимого личной памяти приложений, если он будет выгружен.

Обычно частные байты = объем динамически выделяемой памяти + некоторые дополнительные.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...