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


Структура MEMORYSTATUSEX (sysinfoapi.h)

Содержит сведения о текущем состоянии физической и виртуальной памяти, включая расширенную память. Функция GlobalMemoryStatusEx хранит сведения в этой структуре.

Синтаксис

typedef struct _MEMORYSTATUSEX {
  DWORD     dwLength;
  DWORD     dwMemoryLoad;
  DWORDLONG ullTotalPhys;
  DWORDLONG ullAvailPhys;
  DWORDLONG ullTotalPageFile;
  DWORDLONG ullAvailPageFile;
  DWORDLONG ullTotalVirtual;
  DWORDLONG ullAvailVirtual;
  DWORDLONG ullAvailExtendedVirtual;
} MEMORYSTATUSEX, *LPMEMORYSTATUSEX;

Члены

dwLength

Размер структуры в байтах. Этот член необходимо задать перед вызовом
GlobalMemoryStatusEx.

dwMemoryLoad

Число от 0 до 100, указывающее приблизительный процент используемой физической памяти (0 означает отсутствие использования памяти, а 100 — использование полной памяти).

ullTotalPhys

Объем фактической физической памяти в байтах.

ullAvailPhys

Объем доступной физической памяти в байтах. Это объем физической памяти, который можно немедленно использовать повторно, не записывая его содержимое на диск. Это сумма размера резервного, свободного и нулевого списков.

ullTotalPageFile

Текущее зафиксированное ограничение памяти для системы или текущего процесса в зависимости от того, что меньше, в байтах. Чтобы получить ограничение памяти для всей системы, вызовите Метод GetPerformanceInfo.

ullAvailPageFile

Максимальный объем памяти, который может зафиксировать текущий процесс( в байтах). Это значение равно или меньше значения доступной для всей системы фиксации. Чтобы вычислить доступное для всей системы значение фиксации, вызовите Метод GetPerformanceInfo и вычтите значение CommitTotal из значения CommitLimit.

ullTotalVirtual

Размер части пользовательского режима виртуального адресного пространства вызывающего процесса в байтах. Это значение зависит от типа процесса, типа процессора и конфигурации операционной системы. Например, это значение составляет примерно 2 ГБ для большинства 32-разрядных процессов на процессоре x86 и приблизительно 3 ГБ для 32-разрядных процессов, которые поддерживают большой адрес, работающих в системе с включенной настройкой размером 4 ГБ .

ullAvailVirtual

Объем незарезервированного и незафиксированного объема памяти в пользовательском режиме виртуального адресного пространства вызывающего процесса в байтах.

ullAvailExtendedVirtual

Зарезервировано. Это значение всегда равно 0.

Комментарии

MEMORYSTATUSEX отражает состояние памяти во время вызова. Он также отражает размер файла подкачки в то время. Операционная система может увеличить файл подкачки до максимального размера, установленного администратором.

Возвращаемые размеры физической памяти включают память со всех узлов.

Примеры

Пример см. в статье Функция GlobalMemoryStatusEx .

Требования

Требование Значение
Минимальная версия клиента Windows XP [только классические приложения]
Минимальная версия сервера Windows Server 2003 [только классические приложения]
Верхняя часть sysinfoapi.h (включая Windows.h)

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

GlobalMemoryStatusEx

Сведения о производительности памяти