LocalFree

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

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

function LocalFree(
  hMem: HLOCAL              // дестриптор объекта локальной памяти
): HLOCAL; stdcall;

Параметры

hMem [in]
Дескриптор объекта локальной памяти. Должен быть получен путем вызова функций LocalAlloc или LocalReAlloc.

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

В случае удачного завершения функция возвращает 0.

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

Описание

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

Если параметр hMem равер нулю, то выполнение LocalFree приводит к возникновению исключительной ситуации EAccessViolation.

Функция LocalFree может освободить также и объект, заблокированный в памяти. Заблокированным считается такой объект, счетчик блокировок которого больше нуля. Функция LocalLock блокирует объект локальной памяти и увеличивает на единицу счетчик блокировок. Функция LocalUnlock уменьшает на единицу счетчик блокировок, и, если он стал равен нулю, то разблокирует объект в памяти. Для того, чтобы получить количество блокировок объекта локальной памяти, следует выполнить вызов фукнции LocalFlags.

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

Требования

Windows NT/2000: Требуется Windows NT 3.1 или более поздняя версия
Windows 95/98: Требуется Windows 95 или более поздняя версия
Бибиотека: Kernel32.dll
Подключаемый модуль: Windows

Смотри также:

  • управление памятью,
  • работа с кучей,
  • функции для работы с кучей,
  • глобальные и лоальные функции,
  • GlobalFree,
  • LocalAlloc,
  • LocalFlags,
  • LocalLock,
  • LocalReAlloc,
  • LocalUnlock
  • НазадLocalFlags LocalHandleВперед

    © Mystic, 2002