社区
C++ 语言
帖子详情
如何防止写文件不会被中断?
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
Armv8/Armv9架构】-GIC/异常
中断
专题
本章是《Armv8/Armv9架构深度学习 第二版》的五章,建议购买大课程。 做过arm底层安全的人(或终端安全)也许会知道,学习安全其实就是学习arm架构,而学习arm架构最核心的是什么? 最核心的就是学习和理解异常/
中断
。ARM有4个异常级别、2个执行状态、2个安全状态(armv9则变成4个),在这些Exception Level、Ecution State、Security之间是怎样切换的? 其实就是利用的异常和
中断
。另外多系统之间的切换/交互,核心的思想也都是通过异常/
中断
.... 所以理解异常
中断
后,对整个架构的学习是非常重要的。
写
中断
程序要注意哪些方面?
与每类I/O设备相关的进程都有一个靠近内存底部的地址,称作
中断
向量。它包括
中断
服务程序的入口地址。 当中央处理器正在处理内部数据时,外界发生了紧急情况,要求CPU暂停当前的工作转去处理这个紧急事件。处理完毕后,再回到原来被
中断
的地址,继续原来的工作,这样的过程称为
中断
。 一个
中断
分为哪几个部分:
中断
请求、
中断
响应、
中断
处理、
中断
返回
中断
处理过程: (1)保护被
中断
进程现场。为了在
中断
处理结束后能够使进程准确地返回到
中断
点,系统必须保存当前处理机程序状态字PSW和程序计数器PC等的值。 (2)分析
中断
原因
中断
习题五 1. 什么是
中断
? 是指CPU在正常运行程序时,由于内部/外部事件或由程序预先安排的事件,引起CPU暂时停止正在运行的程序,转到为该内部/外部事件或预先安排的事件服务的程序中去,服务完毕,再返回去继续运行被暂时
中断
的程序,这个过程称为
中断
。 2. 可屏蔽
中断
处理的一般过程是什么? 可屏蔽
中断
的处理过程一般可分为4个阶段: (1)
中断
申请:外设
中断
的含义
1. 什么是
中断
? 是指CPU在正常运行程序时,由于内部/外部事件或由程序预先安排的事件,引起CPU暂时停止正在运行的程序,转到为该内部/外部事件或预先安排的事件服务的程序中去,服务完毕,再返回去继续运行被暂时
中断
的程序,这个过程称为
中断
。 2. 可屏蔽
中断
处理的一般过程是什么? 可屏蔽
中断
的处理过程一般可分为4个阶段: (1)...
Linux 读
写
文件
时,异常断电或程序异常中止导致
文件
出错、损坏
一、问题描述 Linux系统,嵌入式程序开发。 程序运行过程中,有读
写
配置
文件
保存当前位置信息的操作。在程序运行过程中突然断电,或者异常终止程序,就会出现配置
文件
内容出错(内容清空)或者
文件
直接损坏而无法打开的情况。
文件
损坏时,可能报出segmentation fault的错误,以致程序没法正常运行。 二、问题分析 断电瞬间正在往磁盘
写
文件
。 内容丢失:Linux为延迟
写
(dela
C++ 语言
64,691
社区成员
250,497
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章