Bagikan melalui


Fungsi GlobalLock (winbase.h)

Mengunci objek memori global dan mengembalikan penunjuk ke byte pertama blok memori objek.

Catatan Fungsi global 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 global harus digunakan. Untuk informasi selengkapnya, lihat Fungsi Global dan Lokal.
 

Sintaks

LPVOID GlobalLock(
  [in] HGLOBAL hMem
);

Parameter

[in] hMem

Handel ke objek memori global. Handel ini dikembalikan oleh fungsi GlobalAlloc atau GlobalReAlloc .

Mengembalikan nilai

Jika fungsi berhasil, nilai yang dikembalikan adalah penunjuk ke byte pertama dari 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 dipangkas, GlobalLock menaikkan hitungan satu per satu, dan fungsi GlobalUnlock mengurangi hitungan satu per satu. Setiap panggilan yang berhasil yang dilakukan proses ke GlobalLock untuk objek harus dicocokkan dengan panggilan yang sesuai ke GlobalUnlock. Memori terkunci tidak akan dipindahkan atau dibuang, kecuali objek memori direalokasikan dengan menggunakan fungsi GlobalReAlloc . Blok memori objek memori terkunci tetap terkunci sampai jumlah kuncinya dikurangi menjadi nol, pada saat itu dapat dipindahkan atau dibuang.

Objek memori yang dialokasikan dengan GMEM_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

   
Klien minimum yang didukung Windows XP [aplikasi desktop | Aplikasi UWP]
Server minimum yang didukung Windows Server 2003 [aplikasi desktop | Aplikasi UWP]
Target Platform Windows
Header winbase.h (termasuk Windows.h)
Pustaka Kernel32.lib
DLL Kernel32.dll

Lihat juga

Fungsi Global dan Lokal

GlobalAlloc

GlobalReAlloc

GlobalUnlock

Fungsi Manajemen Memori