Funzione FltReleaseContext (fltkernel.h)

FltReleaseContext decrementa il conteggio dei riferimenti in un contesto.

Sintassi

VOID FLTAPI FltReleaseContext(
  [in] PFLT_CONTEXT Context
);

Parametri

[in] Context

Puntatore al contesto. Deve essere un puntatore valido a un oggetto di contesto per un volume, un'istanza, un flusso o un handle di flusso. Questo parametro è obbligatorio e non può essere NULL.

Valore restituito

nessuno

Osservazioni

Per altre informazioni sui contesti, vedere Informazioni sui contesti minifilter.

Un driver minifilter chiama FltReleaseContext per rilasciare un contesto. FltReleaseContext decrementa il conteggio dei riferimenti nel contesto specificato. Quando il conteggio dei riferimenti raggiunge zero, il contesto viene liberato immediatamente se il chiamante è in esecuzione in IRQL <= APC_LEVEL. Se il chiamante è in esecuzione in IRQL DISPATCH_LEVEL, viene pianificato un elemento di lavoro per liberare il contesto.

Nota

Dopo la restituzione di FltReleaseContext , il chiamante non deve usare il contesto, perché il contesto potrebbe essere già stato liberato.

Ogni chiamata riuscita a FltAllocateContext, FltGetXxxContext o FltReferenceContext deve essere trovata alla fine da una chiamata a FltReleaseContext.

Si noti che il puntatore OldContext restituito da FltSetXxxContext e il parametro Context usato per chiamare FltDeleteContext devono anche essere rilasciati chiamando FltReleaseContext quando non sono più necessari.

Per allocare un nuovo contesto, chiamare FltAllocateContext.

Per incrementare il conteggio dei riferimenti in un contesto, chiamare FltReferenceContext.

Per altre informazioni sul conteggio dei riferimenti al contesto, vedere Riferimenti ai contesti.

I chiamanti di FltReleaseContext devono essere in esecuzione in IRQL <= DISPATCH_LEVEL se il contesto è stato allocato da un pool non di paging. Se il contesto è stato allocato dal pool di paging, i chiamanti devono essere in esecuzione in IRQL <= APC_LEVEL.

Requisiti

Requisito Valore
Piattaforma di destinazione Universale
Intestazione fltkernel.h (include Fltkernel.h)
Libreria FltMgr.lib
DLL Fltmgr.sys
IRQL Vedere la sezione Osservazioni.

Vedi anche

FltAllocateContext

FltDeleteContext

FltGetContexts

FltGetContextsEx

FltGetFileContext

FltGetInstanceContext

FltGetSectionContext

FltGetStreamContext

FltGetStreamHandleContext

FltGetTransactionContext

FltGetVolumeContext

FltReferenceContext

FltReleaseContexts

FltSetFileContext

FltSetInstanceContext

FltSetStreamContext

FltSetStreamHandleContext

FltSetTransactionContext

FltSetVolumeContext