Fungsi OfferVirtualMemory (memoryapi.h)

Menunjukkan bahwa data yang terkandung dalam rentang halaman memori tidak lagi diperlukan oleh aplikasi dan dapat dibuang oleh sistem jika perlu.

Halaman yang ditentukan akan ditandai sebagai tidak dapat diakses, dihapus dari set kerja proses, dan tidak akan ditulis ke file halaman.

Untuk mengklaim kembali halaman yang ditawarkan nanti, panggil ReclaimVirtualMemory.

Sintaks

DWORD OfferVirtualMemory(
  [in] PVOID          VirtualAddress,
  [in] SIZE_T         Size,
  [in] OFFER_PRIORITY Priority
);

Parameter

[in] VirtualAddress

Alamat awal memori yang diratakan halaman untuk ditawarkan.

[in] Size

Ukuran, dalam byte, dari wilayah memori yang akan ditawarkan. Ukuran harus berupa bilangan bulat kelipatan ukuran halaman sistem.

[in] Priority

Prioritas menunjukkan betapa pentingnya memori yang ditawarkan untuk aplikasi. Prioritas yang lebih tinggi meningkatkan probabilitas bahwa memori yang ditawarkan dapat diklaim kembali utuh saat memanggil ReclaimVirtualMemory. Sistem biasanya membuang memori prioritas yang lebih rendah sebelum membuang memori prioritas yang lebih tinggi. Prioritas harus menjadi salah satu nilai berikut.

Nilai Makna
VMOfferPriorityVeryLow
0x00000001
Memori yang ditawarkan adalah prioritas yang sangat rendah, dan harus menjadi yang pertama dibuang.
VMOfferPriorityLow
0x00000002
Memori yang ditawarkan berprioritas rendah.
VMOfferPriorityBelowNormal
0x00000003
Memori yang ditawarkan di bawah prioritas normal.
VMOfferPriorityNormal
0x00000004
Memori yang ditawarkan memiliki prioritas normal untuk aplikasi, dan harus menjadi yang terakhir dibuang.

Mengembalikan nilai

ERROR_SUCCESS jika berhasil; Kode Kesalahan Sistem jika tidak.

Keterangan

Untuk mengklaim kembali halaman yang ditawarkan, panggil ReclaimVirtualMemory. Data di halaman yang direklamasi mungkin telah dibuang, dalam hal ini konten wilayah memori tidak terdefinisi dan harus ditulis ulang oleh aplikasi.

Jangan panggil OfferVirtualMemory untuk menawarkan memori virtual yang dikunci. Melakukannya akan membuka kunci rentang halaman yang ditentukan.

Perhatikan bahwa menawarkan dan mengklaim kembali memori virtual mirip dengan menggunakan bendera alokasi memori MEM_RESET dan MEM_RESET_UNDO, kecuali bahwa OfferVirtualMemory menghapus memori dari set kerja proses dan membatasi akses ke halaman yang ditawarkan hingga diklaim kembali.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 8.1 Update [aplikasi desktop | Aplikasi UWP]
Server minimum yang didukung Pembaruan Windows Server 2012 R2 [aplikasi desktop | Aplikasi UWP]
Target Platform Windows
Header memoryapi.h (termasuk Windows.h, Memoryapi.h)
Pustaka onecore.lib
DLL Kernel32.dll

Lihat juga

DiscardVirtualMemory

Fungsi Manajemen Memori

ReclaimVirtualMemory

Fungsi Memori Virtual

VirtualAlloc

VirtualFree

VirtualLock

VirtualQuery