Condividi tramite


Funzione CcUnpinRepinnedBcb (ntifs.h)

La routine CcUnpinRepinnedBcb rimuove un blocco di controllo buffer repinned.

Sintassi

void CcUnpinRepinnedBcb(
  [in]  PVOID            Bcb,
  [in]  BOOLEAN          WriteThrough,
  [out] PIO_STATUS_BLOCK IoStatus
);

Parametri

[in] Bcb

Puntatore al BCB repinned.

[in] WriteThrough

Impostare su TRUE se il BCB deve essere scritto.

[out] IoStatus

Puntatore a una struttura IO_STATUS_BLOCK. Se la chiamata a CcUnpinRepinnedBcb ha esito positivo, IoStatus.Status è impostata su STATUS_SUCCESS. In caso contrario, è impostato su un codice di errore NTSTATUS appropriato. IoStatus.Information è impostato sul numero effettivo di byte scaricati correttamente su disco.

Valore restituito

Nessuno

Osservazioni

I file system chiamano CcUnpinRepinnedBcb per scrivere un buffer aggiunto in precedenza su disco.

Ogni chiamata a CcRepinBcb deve essere confrontata con una chiamata successiva a CcUnpinRepinnedBcb.

Poiché CcUnpinRepinnedBcb acquisisce esclusivamente la risorsa BCB, il chiamante deve prestare molta attenzione per evitare deadlock. Se possibile, il chiamante non deve possedere risorse. In caso contrario, il chiamante deve garantire che non abbia altro aggiunto nello stesso file memorizzato nella cache. In genere ccUnpinRepinnedBcb viene chiamato durante il completamento della richiesta, dopo il rilascio di tutte le altre risorse.

CcUnpinRepinnedBcb scrive in modo sincrono il buffer (per le richieste write-through) e rimuove il bcb restituito dalla chiamata precedente a CcRepinBcb.

Fabbisogno

Requisito Valore
piattaforma di destinazione Universale
intestazione ntifs.h (include Ntifs.h)
libreria NtosKrnl.lib
dll NtosKrnl.exe

Vedere anche

CcRepinBcb