110,536
社区成员
发帖
与我相关
我的任务
分享
的确有次可能,这不是简单的方案能解决的,除非你修改成功了,但不退出占用
这样的话rollback是不是也有失败的可能。比如已经修改过的在rollback之前被占用了。 感觉对于你这个update最简单的文件事务就是 修改前复制一份,commit时删除备份,rollback时复制回原位置再删除备份
感觉对于你这个update最简单的文件事务就是 修改前复制一份,commit时删除备份,rollback时复制回原位置再删除备份
所以你应该采用8楼的办法 不要直接去改文件 而是copy一份出来改名字,然后再放回去. 再删除原文件. 当然原文件如果删不掉其实也不影响什么
感觉对于你这个update最简单的文件事务就是 修改前复制一份,commit时删除备份,rollback时复制回原位置再删除备份
[quote=引用 9 楼 Z65443344 的回复:] 这就好比一个保护人质的任务 如果不能保证全部人质都活着,那就都杀了.这是可以做到的 而如果说: 如果你杀了一个人之后,发现其他的人杀不掉,那么之前那个人就别杀了 这可能吗??
这就好比一个保护人质的任务 如果不能保证全部人质都活着,那就都杀了.这是可以做到的 而如果说: 如果你杀了一个人之后,发现其他的人杀不掉,那么之前那个人就别杀了 这可能吗??
这和原子操作有半毛钱关系?
[quote=引用 1 楼 shingoscar 的回复:] 只能这么弄,改之前记下所有文件名字 出错了以后把已经改过的改回去
只能这么弄,改之前记下所有文件名字 出错了以后把已经改过的改回去