Try Catch对效能影响的测试
从合作开始注意了对Try Catch的使用,当时想的是既然错误处理能让程序在测试的时候不出错,那么为什么不在每个程序段上都加上错误处理呢(当时用三层架构开发的系统,只在U层和SQLHelper加上了错误处理)?后来通过和别人交流得知Try Catch会影响程序效能,至于怎么影响的就不得而知了。
在网上查了一番,得到的结论是Try Catch只会在Catch抓住异常的时候影响效能,没有异常的时候对于效能没影响。恰好昨天看到同班同学的博客,对异常处理影响效能做了测试,结论是加了异常处理对效能的影响微乎其微(运行时间增加了1ms)。
先放下别人的结论,咱们自己动下手,写下测试的代码:
可以看到,没有Try Catch的test1和有Try Catch 但没有抛出异常的程序时间一样,有Try Catch 并抓住异常的test3运行所用时间大概增加了11ms,不到一倍的样子(多次运行测试,时间虽有不同,但相差不多)。从这个测试可以看出,加了Try Catch确实会影响效能。
做程序,考虑性是一方面,程序的稳定也是一个相当重要的方面,因此在有可能出错的地方加上Try Catch 还是非常必要的。
- 5楼yaoyong0745昨天 08:23
- 淡淡的淡淡的淡淡的淡淡的淡淡的淡淡
- Re: xqf30910小时前
- 回复yaoyong0745n怎么个淡法.....
- 4楼lfmilaoshi昨天 07:47
- 程序的稳定也是一个相当重要的方面,这就是健壮性。。。米老师
- Re: xqf309昨天 07:47
- 回复lfmilaoshin恩,我们应该做稳定的程序
- 3楼lidaasky昨天 07:46
- 精准的实验
- Re: xqf309昨天 07:47
- 回复lidaaskyn嘿嘿
- 2楼liushuijinger昨天 00:01
- 实践是王道
- Re: xqf309昨天 01:00
- 回复liushuijingern[e04]
- 1楼liutengteng130前天 17:59
- 支持,加油啊。
- Re: xqf309昨天 23:24
- 回复liutengteng130n恩,谢啦