0

メタデータ (ファイルサイズなど) を強制的にフラッシュせずに、ファイルに追加したバイトの範囲を fsync する必要があります。

4

1 に答える 1

1

あなたが言ったように、それはリング3であり、それはC ++です。答えは次のとおりです。

FlushViewOfFileファイルをマッピングした後に呼び出す必要があります。MSDNによると:

FlushViewOfFile 関数は、ファイル メタデータをフラッシュせず、基になるハードウェア ディスク キャッシュから変更がフラッシュされ、ディスクに物理的に書き込まれるまで待機しません。

ソース: https://msdn.microsoft.com/en-us/library/windows/desktop/aa366563%28v=vs.85%29.aspx

データを書き込み、FlushViewOfFile を使用するサンプル コードは次のとおりです: http://forums.codeguru.com/showthread.php?367742-FlushViewOfFile-does-not-Flush

于 2015-10-14T18:50:37.810 に答える