如何防止写文件不会被中断?

coldplay968 2006-11-08 07:01:12
我正在向文件里也内容,但是发现 若选择关闭按钮来结束程序的话,就有一部分内容没有写进去而程序就结束了。
如何防止这样的事情发生
...全文
390 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
ppzine 2006-11-15
  • 打赏
  • 举报
回复
重载close方法就行了,让你写完了,在退出
zhyaaa123 2006-11-11
  • 打赏
  • 举报
回复
如果要防止程序里面其他代码的破坏,可以设置互斥;
要防止程序关闭导致写文件失败,你可以将关闭按扭灰掉;
但是要完全保证不失败是不可能的,你能阻止用户拔电源吗?
Timewk 2006-11-11
  • 打赏
  • 举报
回复
类似可以,在《C和指针》中好像有这样的介绍kenneth A.Reek的
每个程序结束时都有一个处理函数,可以修改该函数,使程序延后结束,甚至可以不结束,不记得是不是这样的
coldplay968 2006-11-11
  • 打赏
  • 举报
回复
up
henrykim 2006-11-11
  • 打赏
  • 举报
回复
用UPS
h60009493 2006-11-10
  • 打赏
  • 举报
回复
程序是不可能让写文件不会失败的,写文件失败的原因很多很多.....很多都是硬件原因,软件无法保证,所以只有使用一些启动恢复策略来保护.
h60009493 2006-11-10
  • 打赏
  • 举报
回复
在写文件前先设置一个状态文件,写完后,在状态文件中把该状态清空.用这个判断写文件是否结束....在状态文件中还可记录很多其他信息,记录些啥看实际应用!
coldplay968 2006-11-10
  • 打赏
  • 举报
回复
问题虽然没解决,但是我还是要非常感谢大家的回帖
笑面书生111 2006-11-09
  • 打赏
  • 举报
回复
呵呵,21:23了都
笑面书生111 2006-11-09
  • 打赏
  • 举报
回复
看看几点了
whatsouta 2006-11-09
  • 打赏
  • 举报
回复
要看你怎么去中断程序,如果是引起程序退出的系统中断,你可以定义自己的系统中断信息处理函数,不让程序退出,但有些系统信号是用户无法控制的。
像你说的只是一个按钮,那么你可以控制到写完文件再退出。
helanshan 2006-11-08
  • 打赏
  • 举报
回复
是缓冲区中的数据丢失,同意楼上
lann64 2006-11-08
  • 打赏
  • 举报
回复
每个写文件动作紧跟着刷新写缓冲区,可以降低丢失缓冲中数据。
飞哥 2006-11-08
  • 打赏
  • 举报
回复
要是退出主程序,那什么都结束了
根本就不会继续执行程序
飞哥 2006-11-08
  • 打赏
  • 举报
回复
没办法,延迟主程序结束?
--
Arthur_ 2006-11-08
  • 打赏
  • 举报
回复
設置個條件變量flag
當讀文件的時候將flag=1
讀後將flag=0

64,691

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧