C ++在保存完成之前阻止系统退出

问题描述

我的系统自动保存过程出现问题。这是我的保存方式:

  1. 创建一个具有确切名称文件,并在末尾添加“〜”,例如text.txt〜如果系统要保存text.txt
  2. 内容写入text.txt〜
  3. 将text.txt〜的内容复制到text.txt
  4. 删除text.txt〜
  5. 完成。

这里的问题是,如果在第三步过程中关闭系统,则text.txt会损坏。谁能告诉我如何确保正确保存文件?是否有一种方法可以阻止过程终止?我是否必须为该特定阶段创建线程,或者在系统退出时也将其关闭?到底是什么样子。一个代码示例将非常有帮助。

谢谢您的帮助。

复制过程的代码

1    ifstream f1 (tmp_path,fstream::binary);
2    ofstream f2 (path,fstream::trunc|fstream::binary);
3    f2<<f1.rdbuf();
4    f1.close();
5    f2.close();

目标:确保第3行始终结束

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)