异常失败的原子性指如果调用对象的方法抛出了异常,那么此对象的状态应与抛出异常前相同。即对象状态不因为抛出异常而改变,只有这样,调用者才可能在捕获异常后进行恢复。
保证异常失败的原子性可能的方式包括:
1.执行运算前(这里指执行能够修改对象状态的运算)先检查条件,如检查输入参数值,对象属性。如果不满足条件则触发异常。
2.如果不能检查运算条件,那么应该执行可能触发异常的运算,再执行需要修改对象状态的运算
3.在异常触发后执行修复代码,适用于基于硬盘的数据操作,如文件和数据库
4.复制对象并对其进行运算,如果触发异常不会影响原对象。适用于复制对象不会明显降低性能或增加内存占用的情况(一般来说复制对象可以提高运算速度,但是会增加内存占用)
如果不能保证异常失败的原子性,那么应在注释里详细说明。一般在多线程的情况下,较难保证异常失败的原子性
相关推荐
Opera浏览器 9.64 Build 10487 Final
通过艺术性的加密、数据压缩和其它安全特性保护您的程序不被盗版和破解。Armadillo 可以让您在5分钟内为您的程序设计并添加一套完全的软件保护和注册系统,并且不需要您修改任何程序代码!Armadillo 支持所有语言...
介于linux和unix系统间好用的浏览器,opera-9.64-4.1.fc9.i386.rpm
视频加密一机一码,图片加密U盘加密软件,软件加密软件,压缩包加密软件
可以下载很多。。。。。。。。。。不过开始是英文的界面,自己调....
一个极为出色的浏览器,具有速度快、节省系统资源、订制能力强、安全性高以及体积小等特点,目前已经是最受欢迎的浏览器之一,多文件接口(MDI)、方便的缩放功能、整合搜索引擎、键盘截径与鼠标浏览功能、当机时下次...
这是早版的Web Wiz论坛。 .访问是Access数据库。快速、可设定管理权限等级的论坛程序,支持skin,程序支持多国语系模块 后台用户名: Administrator 密码: letmein
实际使用,确保能用。
通过艺术性的加密、数据压缩和其它安全特性保护您的程序不被盗版和破解。Armadillo 可以让您在5分钟内为您的程序设计并添加一套完全的软件保护和注册系统,并且不需要您修改任何程序代码!Armadillo 支持所有语言...
Armadillo 4.4 Public汉化版Beta1.rar
此外,获得了高于4.44 MeV态直至11 MeV的激发能量的截面总和的角度分布,其中包括7.65 MeV(02+),9.64 MeV(31â′)和10.30 MeV(22 +)状态,除了可能同时激发弹丸和目标核中的4.44 MeV状态。 这些组合的数据...
现在新的浏览器都不支持SSLv3了,但有些情况必须要使用,这个版本的opera可以打开
1.11 9.64 1.21 2.28 3.12 3.94 1.47 2.24
2011加壳加花加密工具2011加壳加花加密工具2011加壳加花加密工具
Fritzing是一款图形化电路开发软件,还是个电子设计自动化软件,可以用于学习和制作电路原理图和PCB。 0.9.4版本是目前最新的版本,发布于2019年11月1日。
在5%Mo/HSF作用下,补连塔煤热解的焦油产率达到10.8%,焦油中苯类质量分数增加了2.31%,酚类几乎不变,脂肪烃质量分数增加了8.44%,稠环芳烃质量分数减少9.64%。活性组分Mo的引入不仅可以提高焦油
采用基于密度泛函理论的第一性原理,对 Heusler合金 Mn2 NiSi的电子结构和磁性进行了研究。计算结果表明:从立方结构到四方结构的相变降低了总能量,表明马氏体相是更加稳定的。随着温度的降低, Mn2 NiSi经历了从奥氏体...
目的 测定薄皮和厚皮巴旦木的水分、灰分、挥发油和浸出物的含量,为控制巴旦木的药材质量提供实验数据。...冷浸法水溶性浸出物含量不低于9.64%;热浸法水溶性浸出物含量不低于12.12%;冷浸法醇溶性浸出物含量不低于
为了研究天气季节性变化对机场到达容量分布的影响,...研究结果表明:包含5,6,7,8和9月的层云季节下降容量持续 8h的概率为25.76%,正常容量持续8h的概率仅为9.64%.根据容量概率分布得到季的天气季节性影响与实际情况相符.
为了研究天气季节性变化对机场到达容量分布的影响,统计得到基于...研究结果表明:包含5、6、7、8和9月的层云季节下降容量持续8 h的概率为25.76%,正常容 量持续8 h的概率仅为9.64%。根据容量概率分布得到季的天气季节性