Функция RpcSmFree (rpcndr.h)

Функция RpcSmFree освобождает память, выделенную RpcSmAllocate.

Синтаксис

RPC_STATUS RpcSmFree(
  void *NodeToFree
);

Параметры

NodeToFree

Указатель на память, выделенную RpcSmAllocate или RpcSsAllocate.

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

Функция RpcSmFree возвращает следующее значение.

Значение Значение
RPC_S_OK
Вызов выполнен успешно.
 
Примечание Список допустимых кодов ошибок см. в разделе Возвращаемые значения RPC.
 

Комментарии

Приложения используют RpcSmFree для освобождения памяти, выделенной RpcSmAllocate. В случаях, когда заглушка выделяет память для приложения, RpcSmFree также можно использовать для освобождения памяти. Дополнительные сведения см. в разделе Управление памятью.

Чтобы повысить производительность, функция RpcSmFree помечает память только для выпуска. Память фактически не освобождается, пока приложение не вызовет функцию RpcSmDisableAllocate . Чтобы немедленно освободить память, вызовите функцию midl_user_free .

Обратите внимание, что дескриптор потока, вызывающего RpcSmFree, должен совпадать с дескриптором потока, который выделил память путем вызова RpcSmAllocate. Используйте RpcSmGetThreadHandle и RpcSmSetThreadHandle для передачи дескрипторов из потока в поток.

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Профессиональная [классические приложения | Приложения UWP]
Минимальная версия сервера Windows 2000 Server [классические приложения | Приложения UWP]
Целевая платформа Windows
Header rpcndr.h (включая Rpc.h)
Библиотека Rpcrt4.lib
DLL Rpcrt4.dll

См. также раздел

RpcSmAllocate

RpcSmGetThreadHandle

RpcSmSetThreadHandle

midl_user_allocate