Condividi tramite


Scaricamento System-Buffered dati di I/O su disco

Windows archivia i dati nelle operazioni di lettura e scrittura dei file nei buffer di dati gestiti dal sistema per ottimizzare le prestazioni del disco. Quando un'applicazione scrive in un file, il sistema in genere memorizza i dati nel buffer e scrive regolarmente i dati nel disco. Un'applicazione può forzare il sistema operativo a scrivere il contenuto di questi buffer di dati sul disco usando la funzione FlushFileBuffers . In alternativa, un'applicazione può specificare che le operazioni di scrittura devono ignorare il buffer dei dati e scrivere direttamente sul disco impostando il flag FILE_FLAG_NO_BUFFERING quando il file viene creato o aperto usando la funzione CreateFile .

Se nel buffer interno sono presenti dati quando il file viene chiuso, il sistema operativo non scrive automaticamente il contenuto del buffer sul disco prima di chiudere il file. Se l'applicazione non forza il sistema operativo a scrivere il buffer su disco prima di chiudere il file, l'algoritmo di memorizzazione nella cache determina quando viene scritto il buffer.

Nota

L'accesso a un buffer di dati durante l'uso di un'operazione di lettura o scrittura potrebbe danneggiare il buffer. Le applicazioni non devono leggere, scrivere in, riallocare o liberare il buffer di dati usato da un'operazione di lettura o scrittura fino al completamento dell'operazione.