Поделиться через


Функция GlobalFree (winbase.h)

Освобождает указанный объект глобальной памяти и делает недействительным его дескриптор.

Примечание Глобальные функции имеют большую нагрузку и предоставляют меньше функций, чем другие функции управления памятью. Новые приложения должны использовать функции кучи , если в документации не указано, что следует использовать глобальную функцию. Дополнительные сведения см. в разделе Глобальные и локальные функции.
 

Синтаксис

HGLOBAL GlobalFree(
  [in] _Frees_ptr_opt_ HGLOBAL hMem
);

Параметры

[in] hMem

Дескриптор объекта глобальной памяти. Этот дескриптор возвращается функцией GlobalAlloc или GlobalReAlloc . Освобождение памяти, выделенной с помощью LocalAlloc, небезопасно.

Возвращаемое значение

Если функция выполнена успешно, возвращаемое значение равно NULL.

Если функция завершается сбоем, возвращаемое значение равно дескриптору объекта глобальной памяти. Дополнительные сведения об ошибке можно получить, вызвав GetLastError.

Комментарии

Если процесс проверяет или изменяет память после освобождения, может произойти повреждение кучи или может быть создано исключение нарушения доступа (EXCEPTION_ACCESS_VIOLATION).

Функция GlobalFree освободит заблокированный объект памяти. Заблокированный объект памяти имеет число блокировок больше нуля. Функция GlobalLock блокирует объект глобальной памяти и увеличивает количество блокировок на единицу. Функция GlobalUnlock разблокирует ее и уменьшает количество блокировок на один. Чтобы получить количество блокировок объекта глобальной памяти, используйте функцию GlobalFlags .

Если приложение выполняется в отладочной версии системы, GlobalFree выдаст сообщение о том, что заблокированный объект освобождается. При отладке приложения GlobalFree введет точку останова непосредственно перед освобождением заблокированного объекта. Это позволяет проверить предполагаемое поведение, а затем продолжить выполнение.

Примеры

Пример см. в разделе GlobalAlloc.

Требования

   
Минимальная версия клиента Windows XP [классические приложения | Приложения UWP]
Минимальная версия сервера Windows Server 2003 [классические приложения | Приложения UWP]
Целевая платформа Windows
Header winbase.h (включая Windows.h)
Библиотека Kernel32.lib
DLL Kernel32.dll

См. также

Глобальные и локальные функции

GlobalAlloc

GlobalFlags

GlobalLock

GlobalReAlloc

GlobalUnlock

Функции управления памятью