fflushのヘルプ・マニュアル
日本語 英語
fflush --help
man fflush
FFLUSH(3) Linux Programmer’s Manual FFLUSH(3)
名前
fflush - ストリームの内容を強制的に出力(フラッシュ)する
書式
#include
int fflush(FILE *stream);
説明
fflush() 関数は、ユーザー空間でバッファリングされているすべてのデータを
与えられた出力に書き出す (フラッシュする)。あるいはストリーム stream の
下 位にある書き込み関数を用いてこのストリームを更新する。ストリームは開
いた状態のままであり、この関数によって何の影響も受けない。
stream 引数が .BR NULL ならば、 fflush() は開いているすべての出力ストリ
ームをフラッシュする。
これらの処理をロックせずに行いたいときは、 unlocked_stdio(3) を参照のこ
と。
返り値
成功すると 0 が返される。その他の場合には EOF が返され、 errno が、エラ
ーに対応した値に設定される。
エラー
EBADF Stream は開いているストリームではない。あるいはストリームは書き
込み用ではない。
fflush() 関数は write(2) に関して規定されているエラーで失敗することもあ
る。この場合 errno もその値に設定される。
準拠
C89, C99.
注意
fflush() は、 C ライブラリが与えているユーザー空間のバッファしかフラッ
シュしない。データが物理的にディスクに保存されることを保証したければ 、
カ ーネルバッファもフラッシュしなければならない。これには例えば sync(2)
や fsync(2) を用いる。
関連項目
fsync(2), sync(2), write(2), fclose(3), fopen(3), setbuf(3),
unlocked_stdio(3)
GNU 2009-02-23 FFLUSH(3)
FFLUSH(3) Linux Programmer’s Manual FFLUSH(3)
NAME
fflush - flush a stream
SYNOPSIS
#include
int fflush(FILE *stream);
DESCRIPTION
The function fflush() forces a write of all user-space buffered data
for the given output or update stream via the stream’s underlying write
function. The open status of the stream is unaffected.
If the stream argument is NULL, fflush() flushes all open output
streams.
For a non-locking counterpart, see unlocked_stdio(3).
RETURN VALUE
Upon successful completion 0 is returned. Otherwise, EOF is returned
and errno is set to indicate the error.
ERRORS
EBADF Stream is not an open stream, or is not open for writing.
The function fflush() may also fail and set errno for any of the errors
specified for write(2).
CONFORMING TO
C89, C99.
NOTES
Note that fflush() only flushes the user space buffers provided by the
C library. To ensure that the data is physically stored on disk the
kernel buffers must be flushed too, for example, with sync(2) or
fsync(2).
SEE ALSO
fsync(2), sync(2), write(2), fclose(3), fopen(3), setbuf(3),
unlocked_stdio(3)
COLOPHON
This page is part of release 3.22 of the Linux man-pages project. A
description of the project, and information about reporting bugs, can
be found at http://www.kernel.org/doc/man-pages/.
GNU 2009-02-23 FFLUSH(3)