如何等待cpp fstream完成编写,然后再继续? 我有一个C++驱动程序,包含一个DO while循环。在这个循环中,每隔这么多次迭代,就有一个类的成员函数将数据写入磁盘。有趣的是,函数似乎在第n次调用时写入了几乎所有的数据,但在第(n+1)次调用时写入了其余的数据。然后继续写入第(n+1)个数据,并提前停止写入,等等

如何等待cpp fstream完成编写,然后再继续? 我有一个C++驱动程序,包含一个DO while循环。在这个循环中,每隔这么多次迭代,就有一个类的成员函数将数据写入磁盘。有趣的是,函数似乎在第n次调用时写入了几乎所有的数据,但在第(n+1)次调用时写入了其余的数据。然后继续写入第(n+1)个数据,并提前停止写入,等等,c++,filestreams,C++,Filestreams,请原谅我在这里说得不准确,但我怀疑filestream正在存储数据,没有足够的时间将其写入磁盘(每次调用函数时都有大量数据要写入)。然后,它会写下上次使用时留下的内容,并尝试继续它当前应该做的事情 有没有人遇到过类似的问题?有没有办法防止程序在fstream完全写入之前继续运行?您可以调用以确保流与底层存储设备同步。@MaxGraves您在Stackoverflow方面似乎是个新手。为了结束一个问题,海报通常会“接受”一个答案。看到Meta中的解释:是的,你必须等几分钟才能接受答案。我不知道。我

请原谅我在这里说得不准确,但我怀疑filestream正在存储数据,没有足够的时间将其写入磁盘(每次调用函数时都有大量数据要写入)。然后,它会写下上次使用时留下的内容,并尝试继续它当前应该做的事情


有没有人遇到过类似的问题?有没有办法防止程序在fstream完全写入之前继续运行?

您可以调用以确保流与底层存储设备同步。

@MaxGraves您在Stackoverflow方面似乎是个新手。为了结束一个问题,海报通常会“接受”一个答案。看到Meta中的解释:是的,你必须等几分钟才能接受答案。我不知道。我不经常问问题,不用担心!不管怎样,我还是走开去吃午饭了