Metodo ICallFrame::Free (callobj.h)
Libera la copia del frame per evitare una perdita di memoria.
Quando viene creata una copia di un frame di chiamata con il metodo Copy , il frame di chiamata non pulisce automaticamente i dati copiati. Pertanto, dopo la restituzione di una copia del frame di chiamata, l'utente è responsabile della chiamata del metodo Free per liberare la copia dei fotogrammi ed evitare una perdita di memoria.
Sintassi
HRESULT Free(
[in] ICallFrame *pframeArgsDest,
[in] ICallFrameWalker *pWalkerDestFree,
[in] ICallFrameWalker *pWalkerCopy,
[in] DWORD freeFlags,
[in] ICallFrameWalker *pWalkerFree,
[in] DWORD nullFlags
);
Parametri
[in] pframeArgsDest
Puntatore a un'istanza dell'interfaccia ICallFrame . Rappresenta il puntatore dello stack del frame di chiamata in cui devono essere copiati i parametri out prima che la copia del frame venga liberata. Il frame di destinazione è in genere il frame padre da cui è stato originariamente copiato il frame. Questo parametro è facoltativo e,
Quando si libera un frame e si specifica un parametro pframeArgsDest che si trova nello stesso spazio di memoria del frame ricevitore, viene chiamato solo il parametro pWalkerCopy in ogni puntatore di interfaccia.
[in] pWalkerDestFree
Puntatore a un'istanza dell'interfaccia ICallFrameWalker . Se esistono parametri in e out in pframeArgsDest, la propagazione richiede che tali valori vengano liberati. Fornendo l'oggetto pWalkerDestFree , i puntatori all'interfaccia verranno liberati. Se pframeArgsDest è NULL, questo parametro deve anche essere NULL e i puntatori di interfaccia devono essere rilasciati chiamando il metodo Release .
[in] pWalkerCopy
Puntatore a un'istanza dell'interfaccia ICallFrameWalker . Quando i parametri in e out in pframeArgsDest vengono liberati, viene eseguita la propagazione dei parametri out. Se questo parametro non viene specificato, i puntatori di interfaccia verranno passati a AddRef. Questo parametro è facoltativo e,
[in] freeFlags
Flag dall'enumerazione CALLFRAME_FREE .
[in] pWalkerFree
Puntatore a un'istanza dell'interfaccia ICallFrameWalker . Se specificato, viene eseguito un callback per ogni puntatore di interfaccia rilevato durante la liberazione. Se questo parametro non viene specificato, i puntatori di interfaccia vengono liberati dal metodo Release .
[in] nullFlags
Flag dell'enumerazione CALLFRAME_NULL .
Valore restituito
Questo metodo può restituire i valori seguenti.
Codice restituito | Descrizione |
---|---|
|
Metodo completato correttamente. |
|
Si è verificato un errore imprevisto. |
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 2000 Professional [solo app desktop] |
Server minimo supportato | Windows 2000 Server [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | callobj.h |