Função OfferVirtualMemory (memoryapi.h)
Indica que os dados contidos em um intervalo de páginas de memória não são mais necessários para o aplicativo e podem ser descartados pelo sistema, se necessário.
As páginas especificadas serão marcadas como inacessíveis, removidas do conjunto de trabalho do processo e não serão gravadas no arquivo de paginação.
Para recuperar páginas oferecidas posteriormente, chame ReclaimVirtualMemory.
Sintaxe
DWORD OfferVirtualMemory(
[in] PVOID VirtualAddress,
[in] SIZE_T Size,
[in] OFFER_PRIORITY Priority
);
Parâmetros
[in] VirtualAddress
Endereço inicial alinhado à página da memória a ser oferecida.
[in] Size
Tamanho, em bytes, da região de memória a ser oferecida. O tamanho deve ser um múltiplo inteiro do tamanho da página do sistema.
[in] Priority
A prioridade indica a importância da memória oferecida para o aplicativo. Uma prioridade mais alta aumenta a probabilidade de que a memória oferecida possa ser recuperada intacta ao chamar ReclaimVirtualMemory. O sistema normalmente descarta a memória de prioridade mais baixa antes de descartar a memória de prioridade mais alta. A prioridade deve ser um dos valores a seguir.
Retornar valor
ERROR_SUCCESS se tiver êxito; caso contrário , um código de erro do sistema.
Comentários
Para recuperar as páginas oferecidas, chame ReclaimVirtualMemory. Os dados em páginas recuperadas podem ter sido descartados, caso em que o conteúdo da região de memória é indefinido e deve ser reescrito pelo aplicativo.
Não chame OfferVirtualMemory para oferecer memória virtual bloqueada. Isso desbloqueará o intervalo de páginas especificado.
Observe que a oferta e a recuperação de memória virtual são semelhantes ao uso dos sinalizadores de alocação de memória MEM_RESET e MEM_RESET_UNDO, exceto que OfferVirtualMemory remove a memória do conjunto de trabalho do processo e restringe o acesso às páginas oferecidas até que elas sejam recuperadas.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 8.1 Update [aplicativos da área de trabalho | Aplicativos UWP] |
Servidor mínimo com suporte | Atualização do Windows Server 2012 R2 [aplicativos da área de trabalho | Aplicativos UWP] |
Plataforma de Destino | Windows |
Cabeçalho | memoryapi.h (inclua Windows.h, Memoryapi.h) |
Biblioteca | onecore.lib |
DLL | Kernel32.dll |