Funzione type_UserFree
La <funzione type>_UserFree è una funzione helper per gli attributi [ wire_marshal] e [ user_marshal]. Gli stub chiamano questa funzione per liberare i dati sul lato server. La funzione è definita come:
void __RPC_USER <type>_UserFree(
unsigned long __RPC_FAR * pFlags,
<type_name> __RPC_FAR * pMyObj );
Il <tipo> nel nome della funzione indica la definizione del tipo userm specificata nella definizione di tipo [wire_marshal] o[user_marshal].
Il parametro pFlags è un puntatore a un campo di flag lungo senza segno . La parola superiore del flag contiene flag di rappresentazione dei dati NDR definiti da OSF DCE per rappresentazioni a virgola mobile, ordine byte e rappresentazioni di caratteri. La parola inferiore contiene un flag di contesto di marshalling come definito dal canale COM. Il layout esatto dei flag all'interno del campo è descritto in La funzione type_UserSize.
Il parametro pMyObj è un puntatore a un oggetto tipo utente. Il motore NDR libera l'oggetto di primo livello. Si è responsabili della liberazione di tutti gli oggetti a cui può puntare l'oggetto di primo livello.
Le eccezioni devono essere rilevate e gestite in locale, le eccezioni non devono essere consentite per propicare lo stack di chiamate.
Argomenti correlati