本次验证一下java Try Catch性能,下面记录过程
验证方式
完成500万次累加,分别记录每次执行时间,求出平均时间
由于是在本次测试,不是很规范,结果可能会有误差,但结论应该是准确的。
1、没有try catch情况下500万次累计
执行时间如下(单位 纳秒 ):
1 |
2 |
3 |
4 |
5 |
平均 |
2863998 |
2664922 |
2710033 |
2411741 |
2557107 |
2641560 |
平均时长:2.6毫秒
2、有try catch情况喜爱500万次累计
1 |
2 |
3 |
4 |
5 |
平均值 |
2036377 |
2296701 |
2179938 |
2214168 |
2763113 |
2298059 |
平均时长:2.3毫秒
两者相差不大.
抛出异常时:
1 |
2 |
3 |
3 |
5 |
平均 |
360968038 |
330624589 |
335370013 |
352525289 |
326932021 |
341283990 |
平均耗时:34.1毫秒
结论:在未抛出异常情况下,性能相差不大,抛出异常的情况下,性能相差 13倍。