Estrutura MEMORYSTATUS (winbase.h)
Contém informações sobre o estado atual da memória física e virtual. A função GlobalMemoryStatus armazena informações em uma estrutura MEMORYSTATUS .
Sintaxe
typedef struct _MEMORYSTATUS {
DWORD dwLength;
DWORD dwMemoryLoad;
SIZE_T dwTotalPhys;
SIZE_T dwAvailPhys;
SIZE_T dwTotalPageFile;
SIZE_T dwAvailPageFile;
SIZE_T dwTotalVirtual;
SIZE_T dwAvailVirtual;
} MEMORYSTATUS, *LPMEMORYSTATUS;
Membros
dwLength
O tamanho da estrutura de dados MEMORYSTATUS , em bytes. Você não precisa definir esse membro antes de chamar a função GlobalMemoryStatus ; a função o define.
dwMemoryLoad
Um número entre 0 e 100 que especifica o percentual aproximado de memória física que está em uso (0 indica que não há uso de memória e 100 indica o uso de memória completa).
dwTotalPhys
A quantidade de memória física real, em bytes.
dwAvailPhys
A quantidade de memória física atualmente disponível, em bytes. Essa é a quantidade de memória física que pode ser reutilizado imediatamente sem precisar gravar seu conteúdo no disco primeiro. É a soma do tamanho das listas em espera, gratuitas e zero.
dwTotalPageFile
O tamanho atual do limite de memória confirmada, em bytes. Essa é a memória física mais o tamanho do arquivo de página, menos uma pequena sobrecarga.
dwAvailPageFile
A quantidade máxima de memória que o processo atual pode confirmar, em bytes. Esse valor deve ser menor do que o commit disponível em todo o sistema. Para calcular esse valor, chame GetPerformanceInfo e subtraia o valor de CommitTotal de CommitLimit.
dwTotalVirtual
O tamanho da parte do modo de usuário do espaço de endereço virtual do processo de chamada, em bytes. Esse valor depende do tipo de processo, do tipo de processador e da configuração do sistema operacional. Por exemplo, esse valor é de aproximadamente 2 GB para a maioria dos processos de 32 bits em um processador x86 e aproximadamente 3 GB para processos de 32 bits que têm reconhecimento de endereço grande em execução em um sistema com ajuste de 4 GT RAM habilitado.
dwAvailVirtual
A quantidade de memória não reservada e não confirmada atualmente na parte do modo de usuário do espaço de endereço virtual do processo de chamada, em bytes.
Comentários
MEMORYSTATUS reflete o estado da memória no momento da chamada. Ele também reflete o tamanho do arquivo de paginação nesse momento. O sistema operacional pode ampliar o arquivo de paginação até o tamanho máximo definido pelo administrador.
Em computadores com mais de 4 GB de memória, a estrutura MEMORYSTATUS pode retornar informações incorretas, relatando um valor de –1 para indicar um estouro. Se o aplicativo estiver em risco para esse comportamento, use a função GlobalMemoryStatusEx em vez da função GlobalMemoryStatus .
Exemplos
Para obter um exemplo, consulte a função GlobalMemoryStatus .
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows XP [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2003 [somente aplicativos da área de trabalho] |
Cabeçalho | winbase.h (inclua Windows.h) |