【初心者歓迎】C/C++室 Ver.43【環境依存OK】
レス数が900を超えています。1000を超えると表示できなくなるよ。
0929デフォルトの名無しさん
2007/11/01(木) 22:34:37とりあえず、以前から「NO_BUFFERING」と叫んでる初心者君だと思うが、
続けるなら捨てハンつけろよ。
で、「書き込みをバッファリングしない」というのは、
確かに「処理が完全に終了する時間(=ディスクに書き込み終わる時間)」は短くなるが
「WriteFileから戻って次の処理を続けられるようになるまでの時間」は長くなるんだよ。
当然だろ?OSのバッファまでコピーするだけで戻れるんだから。
(コピーしない場合、メモリ上のデータが書き換えられるのを防ぐため、カーネルから戻れない)
バッファリングを無効にすることにより処理が速くなるのは、読み込みのときだけだから。
それも、メモリマップドファイルを使う方がずっと一般的で
わざわざOSのキャッシュシステムを無効にして書き込みするのは
DB等の確実性が求められる用途など、極一部でしかない。
もちろん、こういう場合は、自前でキャッシュ管理している。
レス数が900を超えています。1000を超えると表示できなくなるよ。