ファイルにデータを書き込んだ後、fstream を閉じるのに 30 秒以上かかるのはなぜですか? 書けば書くほど、閉じるのに時間がかかります。
fstream *writeReadStream = new fstream("/media/username/KODAK/file.bin", fstream::in | fstream::out | fstream::binary);
writeReadStream->seekg(0x100000);
char randomData[0x100000];
for (int i = 0; i < 0x270; i++)
writeReadStream->write(randomData, 0x100000);
writeReadStream->close();
delete writeReadStream;
close
デバッグ中に、アプリケーションが呼び出しでハングすることがわかりました。デバッグをしなくても、呼び出しprintf
の前後に をclose
呼び出すと、2 番目の に到達するまでに長い時間がかかりprintf
ます。繰り返しますが、書けば書くほど時間がかかります。理由はありますか?
これは、フラッシュ ドライブ/SD カードでのみ発生するようです。