Fungsi LocalUnlock (winbase.h)

Mengurangi jumlah kunci yang terkait dengan objek memori yang dialokasikan dengan LMEM_MOVEABLE. Fungsi ini tidak berpengaruh pada objek memori yang dialokasikan dengan LMEM_FIXED.

Catatan Fungsi lokal memiliki overhead yang lebih besar dan menyediakan lebih sedikit fitur daripada fungsi manajemen memori lainnya. Aplikasi baru harus menggunakan fungsi heap kecuali dokumentasi menyatakan bahwa fungsi lokal harus digunakan. Untuk informasi selengkapnya, lihat Fungsi Global dan Lokal.
 

Sintaks

BOOL LocalUnlock(
  [in] HLOCAL hMem
);

Parameter

[in] hMem

Handel ke objek memori lokal. Handel ini dikembalikan oleh fungsi LocalAlloc atau LocalReAlloc .

Mengembalikan nilai

Jika objek memori masih dikunci setelah mengurangi jumlah kunci, nilai yang dikembalikan bukan nol. Jika objek memori tidak terkunci setelah mengurangi jumlah kunci, fungsi mengembalikan nol dan GetLastError mengembalikan NO_ERROR.

Jika fungsi gagal, nilai yang dikembalikan adalah nol dan GetLastError mengembalikan nilai selain NO_ERROR.

Keterangan

Struktur data internal untuk setiap objek memori menyertakan jumlah kunci yang awalnya nol. Untuk objek memori yang dapat bergerak, fungsi LocalLock menaikkan hitungan satu per satu, dan LocalUnlock mengurangi hitungan satu per satu. Untuk setiap panggilan yang dilakukan proses ke LocalLock untuk objek, pada akhirnya harus memanggil LocalUnlock. Memori terkunci tidak akan dipindahkan atau dibuang kecuali objek memori direalokasikan dengan menggunakan fungsi LocalReAlloc . Blok memori objek memori terkunci tetap terkunci sampai jumlah kuncinya dikurangi menjadi nol, pada saat itu dapat dipindahkan atau dibuang.

Jika objek memori sudah dibuka kuncinya, LocalUnlock mengembalikan laporan FALSE dan GetLastErrorERROR_NOT_LOCKED. Objek memori yang dialokasikan dengan LMEM_FIXED selalu memiliki jumlah kunci nol dan menyebabkan kesalahan ERROR_NOT_LOCKED .

Proses tidak boleh mengandalkan nilai pengembalian untuk menentukan berapa kali kemudian harus memanggil LocalUnlock untuk blok memori.

Persyaratan

   
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

Lihat juga

Fungsi Global dan Lokal

LocalAlloc

LocalFlags

LocalLock

LocalReAlloc

Fungsi Manajemen Memori