文件的原子操作解决思路
文件的原子操作对文件的每次操作,更新幅度较大,如同重写。一般情况下,重写时遭遇断电等意外,文件内容可能丢
文件的原子操作
对文件的每次操作,更新幅度较大,如同重写。
一般情况下,重写时遭遇断电等意外,文件内容可能丢失。
考虑到更新内容事小,文件可旧但不可丢失,采用这种方式:
重写一个临时文件,将临时文件代替旧文件。
力图实现文件重写的原子操作,可否?
替换文件操作,能做到原子化么?
[解决办法]
写日志,然后做操作,如果操作时掉电,则根据日志重放...
[解决办法]
好像没见过掉电也能100%保证文件完整性的软件
[解决办法]
[解决办法]可以参考日志文件系统的方式。完成某个操作后,定时写检查点,断电时根据日志恢复到检查点。
很多数据库都是这样保证数据一致性的。
[解决办法]1楼的方法挺好的。。。
[解决办法]理论上说,替换文件也不能做到原子化,因为断电时刻是一个无穷小量,它可以发生在磁头写磁盘的任意时刻
除非你使用量子计算机,使用量子来保存数据,那么可以做到原子化
[解决办法]如果是替换文件也行吧