Compartilhar via


_flushall

Libera todos os fluxos; limpa todos os buffers.

int _flushall( void );

Valor de retorno

_flushall retorna o número de fluxos abertos (entrada e saída). Não há nenhum retorno de erro.

Comentários

Por padrão, a função de _flushall grava os arquivos apropriados o conteúdo de todos os buffers associados com os fluxos de saída abertos. Todos os buffers associados com os fluxos de entrada abertos serão desmarcados de seus conteúdos atuais. (Esses buffers são mantidos normalmente pelo sistema operacional, que determina o tempo ótimos de gravar automaticamente os dados em disco: quando um buffer for concluída, quando um fluxo está fechado, ou quando um programa será encerrado normalmente sem fechar os fluxos.)

Se uma leitura segue uma chamada a _flushall, os novos dados são lidos os arquivos de entrada nos buffers. Todos os fluxos permanecem abertos depois da chamada a _flushall.

O recurso de disco confirmação-à- da biblioteca de tempo de execução permite garantir que os dados críticos seja gravado diretamente no disco em vez de buffers do sistema operacional. Sem reescrever um programa existente, você pode habilitar esse recurso vincular os arquivos de programa do objeto com Commode.obj. No arquivo executável resultante, as chamadas para _flushall grava o conteúdo de todos os buffers em disco. Somente _flushall e fflush são afetados por Commode.obj.

Para obter informações sobre como controlar o recurso de confirmação-à- disco, consulte Fluxo de E/S, fopen, e _fdopen.

Requisitos

Função

Cabeçalho necessário

_flushall

<stdio.h>

Para obter mais informações sobre compatibilidade, consulte Compatibilidade na Introdução.

Exemplo

// crt_flushall.c
// This program uses _flushall
// to flush all open buffers.


#include <stdio.h>

int main( void )
{
   int numflushed;

   numflushed = _flushall();
   printf( "There were %d streams flushed\n", numflushed );
}
  

Equivalência do .NET Framework

Consulte também

Referência

E/S de fluxo

_commit

fclose, _fcloseall

fflush

setvbuf