Функция RpcSsAllocate (rpcndr.h)
Функция RpcSsAllocate выделяет память в функции управления памятью заглушки RPC и возвращает указатель на выделенную память или значение NULL.
Синтаксис
void * RpcSsAllocate(
size_t Size
);
Параметры
Size
Размер выделенной памяти в байтах.
Возвращаемое значение
Значение | Значение |
---|---|
|
Системе не хватает памяти. |
Комментарии
Функция RpcSsAllocate позволяет приложению выделять память в функции управления памятью заглушки RPC. Перед вызовом RpcSsAllocate необходимо уже установить среду управления памятью. Для управления памятью, вызываемой внутри заглушки, сама заглушка обычно устанавливает необходимую среду. Дополнительные сведения см. в разделе Управление памятью. При использовании RpcSsAllocate для выделения памяти, не вызванной из заглушки, приложение должно вызвать RpcSsEnableAllocate , чтобы установить требуемую среду управления памятью.
Подпрограмма RpcSsAllocate возвращает указатель на выделенную память, если вызов выполнен успешно. В противном случае возникает исключение.
Когда заглушка устанавливает управление памятью, она освобождает любую память, выделенную RpcSsAllocate. Приложение может освободить такую память перед возвратом к вызывающей заглушку, вызвав RpcSsFree.
В отличие от этого, когда приложение устанавливает управление памятью, оно должно освободить любую выделенную память. Для этого вызывается RpcSsFree или RpcSsDisableAllocate.
Для управления одной и той же памятью в среде управления памятью заглушки несколько потоков могут вызывать RpcSsAllocate и RpcSsFree. В этом случае потоки должны совместно использовать один и тот же дескриптор управления памятью заглушки. Приложения передают дескрипторы потоков из потока в поток, вызывая RpcSsGetThreadHandle и RPCSsSetThreadHandle.
Требования
Минимальная версия клиента | Windows 2000 Профессиональная [классические приложения | Приложения UWP] |
Минимальная версия сервера | Windows 2000 Server [классические приложения | Приложения UWP] |
Целевая платформа | Windows |
Header | rpcndr.h (включая Rpc.h) |
Библиотека | Rpcrt4.lib |
DLL | Rpcrt4.dll |