14

boost::filesystem::create_directories()新しいディレクトリを作成するために使用しています。作成直後にこれらのディレクトリにアクセスしようとすると、「そのようなディレクトリはありません」というエラーが表示されます。しかし、ディレクトリを作成した後にしばらくスリープすると、すべて問題ありません (エラーは発生しません)。また、ディレクトリを作成した後にfsync()andを使用してみましたが、違いはありませんでした。sync()ext4 および xfs ファイル システムでテストしており、ブースト バージョンはブースト 1.44 です。

私の質問は

  1. boost::create_directories()ディレクトリを即座に作成しますか? それとも何かが間違っている可能性はありますか?
  2. また、ext4/xfs ですべてをディスクにフラッシュすることがsync()保証fsync()されていますか?
4

0 に答える 0