ファイルを非同期で効率的に拡張する方法を探しています。
サポート ドキュメントでは、Windows NT、Windows 2000、および Windows XP で非同期ディスク I/O が同期として表示されると次のように述べています。
注: アプリケーションは、SetFileValidData 関数を使用してファイルの有効なデータ長を変更し、WriteFile を発行することによって、前述の書き込み操作を非同期にすることができます。
MSDN ではSetFileValidData
、 の関数ですSets the valid data length of the specified file
。
しかし、「有効なデータ」とは何かをまだ理解していません。それとファイルのサイズの違いは何ですか?
と を使用SetFilePointerEx
しSetEndOfFile
てファイル サイズを拡張できますが、これはどのように行うのSetFileValidData
ですか?
SetFileValidData
ファイルサイズより大きい引数は入力できません。この場合、 の生きている意味はSetFileValidData
何ですか?