Función RpcSsAllocate (rpcndr.h)

La función RpcSsAllocate asigna memoria dentro de la función de administración de memoria de código auxiliar rpc y devuelve un puntero a la memoria asignada o NULL.

Sintaxis

void * RpcSsAllocate(
  size_t Size
);

Parámetros

Size

Tamaño de memoria que se va a asignar, en bytes.

Valor devuelto

Valor Significado
RPC_S_OUT_OF_MEMORY
El sistema está sin memoria.
 
Nota Para obtener una lista de códigos de error válidos, vea Rpc Return Values.
 

Comentarios

La función RpcSsAllocate permite a una aplicación asignar memoria dentro de la función de administración de memoria de código auxiliar rpc. Antes de llamar a RpcSsAllocate, el entorno de administración de memoria ya debe establecerse. En el caso de la administración de memoria denominada dentro del código auxiliar, el código auxiliar establece normalmente el entorno necesario. Para obtener más información, consulte Administración de memoria. Cuando se usa RpcSsAllocate para asignar memoria que no se llama desde el código auxiliar, la aplicación debe llamar a RpcSsEnableAllocate para establecer el entorno de administración de memoria necesario.

La rutina RpcSsAllocate devuelve un puntero a la memoria asignada, si la llamada se realizó correctamente. De lo contrario, genera una excepción.

Cuando el código auxiliar establece la administración de memoria, libera cualquier memoria asignada por RpcSsAllocate. La aplicación puede liberar dicha memoria antes de volver al código auxiliar de llamada llamando a RpcSsFree.

Por el contrario, cuando la aplicación establece la administración de memoria, debe liberar cualquier memoria asignada. Para ello, llama a RpcSsFree o RpcSsDisableAllocate.

Para administrar la misma memoria dentro del entorno de administración de memoria de código auxiliar, varios subprocesos pueden llamar a RpcSsAllocate y RpcSsFree. En este caso, los subprocesos deben compartir el mismo identificador de subproceso de administración de memoria auxiliar. Las aplicaciones pasan identificadores de subproceso de subproceso a subproceso llamando a RpcSsGetThreadHandle y RPCSsSetThreadHandle.

Nota La rutina RpcSsAllocate genera excepciones, a diferencia de RpcSmAllocate, que devuelve el código de error.
 

Requisitos

   
Cliente mínimo compatible Windows 2000 Professional [aplicaciones de escritorio | Aplicaciones para UWP]
Servidor mínimo compatible Windows 2000 Server [aplicaciones de escritorio | Aplicaciones para UWP]
Plataforma de destino Windows
Encabezado rpcndr.h (include Rpc.h)
Library Rpcrt4.lib
Archivo DLL Rpcrt4.dll

Consulte también

RpcSmAllocate

RpcSsDisableAllocate

RpcSsEnableAllocate

RpcSsFree

RpcSsGetThreadHandle

RpcSsSetThreadHandle