Fungsi LocalLock (winbase.h)
Mengunci objek memori lokal dan mengembalikan penunjuk ke byte pertama blok memori objek.
Sintaks
LPVOID LocalLock(
[in] HLOCAL hMem
);
Parameter
[in] hMem
Handel ke objek memori lokal. Handel ini dikembalikan oleh fungsi LocalAlloc atau LocalReAlloc .
Nilai kembali
Jika fungsi berhasil, nilai yang dikembalikan adalah penunjuk ke byte pertama blok memori.
Jika fungsi gagal, nilai yang dikembalikan adalah NULL. Untuk mendapatkan informasi kesalahan yang diperluas, hubungi GetLastError.
Keterangan
Struktur data internal untuk setiap objek memori menyertakan jumlah kunci yang awalnya nol. Untuk objek memori yang dapat bergerak, LocalLock menaikkan hitungan satu per satu, dan fungsi LocalUnlock mengurangi hitungan satu per satu. Setiap panggilan yang berhasil dilakukan proses ke LocalLock untuk objek harus dicocokkan dengan panggilan yang sesuai ke LocalUnlock. Memori terkunci tidak akan dipindahkan atau dibuang kecuali objek memori direalokasikan dengan menggunakan fungsi LocalReAlloc . Blok memori objek memori terkunci tetap terkunci dalam memori sampai jumlah kuncinya dikurangi menjadi nol, pada saat itu dapat dipindahkan atau dibuang.
Objek memori yang dialokasikan dengan LMEM_FIXED selalu memiliki jumlah kunci nol. Untuk objek ini, nilai pointer yang dikembalikan sama dengan nilai handel yang ditentukan.
Jika blok memori yang ditentukan telah dibuang atau jika blok memori memiliki ukuran nol byte, fungsi ini mengembalikan NULL.
Objek yang dibuang selalu memiliki jumlah kunci nol.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows XP [hanya aplikasi desktop] |
Server minimum yang didukung | Windows Server 2003 [hanya aplikasi desktop] |
Target Platform | Windows |
Header | winbase.h (termasuk Windows.h) |
Pustaka | Kernel32.lib |
DLL | Kernel32.dll |