C# 中Try Catch对效率影响

当try{}内容不抛错时,使用try{}和正常执行并无明显差别

以数组中取值为测试

int xi = test[1];  

循环100000000次测试结果如下

当try{}内容抛错之时,与添加数组长度判断比较,test为长度为6位的List

以数组中取值为测试

try
 {
      int xi = test[7];
}
catch (Exception e)
 {

 }

int xi = test[test.Count - 1];

  

正常循环100000000次,catch越界错误循环1000次对比测试,

时间: 2024-08-05 18:54:26

C# 中Try Catch对效率影响的相关文章

C# 关于Try/Catch对系统性能影响的总结

自从开始考虑代码的运行效率和性能以后,写代码考虑的东西越来越多了,比如什么时候应该加try/catch?加太多的try/catch会不会降低性能?今天就来分享一下对try/catch对性能影响的一些看法.下面先来看三个问题: 问题一:当一段代码被try块包围后与不加try时在没有异常发生的情况下,执行过程是否有区别? 问题一的回答: 1. try{ }部分和不加try/catch语句块的效率几乎一样, catch{}部分似乎需要100倍以上的时间 ,所以只要不把try{}catch{}作为你的程

PHP中try{}catch{}的具体用法详解

PHP中try{}catch{}是异常处理,将要执行的代码放入TRY块中,如果这些代码执行过程中某一条语句发生异常,则程序直接跳转到CATCH块中,由$e收集错误信息和显示.任何调用 可能抛出异常的方法的代码都应该使用try语句,Catch语句用来处理可能抛出的异常. < ?php try { $mgr = new CommandManager(); $cmd = $mgr->getCommandObject("realcommand"); $cmd->execute

ASP中函数调用对参数的影响

在ASP编程中,经常需要自己编写一些函数(或过程)来实现某些特定的功能,这时往往需要向函数(或过程)传递相应的参数 在函数(或过程)中进行数据处理,即有可能需要保留或改变参数的值,下面有相关范例 用下面的函数(TestAddress)就可以使一个函数多个返回值成为可能(一个函数返回值,多个参数改变后的值) 范例: <%@LANGUAGE="VBSCRIPT"%> <% Option Explicit '=================================

在zend framework框架中try{}catch(Exception e){}的跳转问题

请勿盗版,转载请加上出处http://blog.csdn.net/yanlintao1 首先我先说明我遇到的问题 try{ //导入学生信息 $ModelStudent->insert($data2); } catch (Exception $e) { unlink(DOCS_PATH.'/student.xls'); $this->view->str = '导入失败,请检查数据格是否正确!'; $this->_forward("error","glo

STL中的内存与效率

STL中的内存与效率 1. 使用reserve()函数提前设定容量大小,避免多次容量扩充操作导致效率低下.  关于STL容器,最令人称赞的特性之一就是是只要不超过它们的最大大小,它们就可以自动增长到足以容纳你放进去的数据.(要知道这个最大值,只要 调用名叫max_size的成员函数.)对于vector和string,如果需要更多空间,就以类似realloc的思想来增长大小. vector容器 支持随机访问,因此为了提高效率,它内部使用动态数组的方式实现的. 在通过 reserve() 来申请特定

JS修改标签中的文本且不影响其中标签

/********************************************************************* * JS修改标签中的文本且不影响其中标签 * 说明: * 需要修改<a>标签中的显示文本内容,但<a>标签中又有标签. * * 2017-8-28 深圳 龙华樟坑村 曾剑锋 ********************************************************************/ 一.参考文档: 1. get

PHP 中数组函数 isset 效率比 array_key_exists 更高

PHP 中数组函数 isset 效率比 array_key_exists 更高 PHP 浏览:4194 2014年04月05日 isset 和 array_key_exists 函数都可以用来测试数组中变量是否存在: if(isset($array[$i])){ echo "存在"; } if(array_key_exists($i, $array)) { echo "存在"; } 那么这两个函数有什么区别呢?经过测试: 当数组个数为10时,两者差异就体现出来了,i

【转】case: Java中try catch finally语句中含有return语句的执行情况(总结版)

Java中try catch finally语句中含有return语句的执行情况(总结版) 有一点可以肯定,finally块中的内容会先于try中的return语句执行,如果finall语句块中也有return语句的话,那么直接从finally中返回了,这也是不建议在finally中return的原因.下面来看这几种情况. 情况一(try中有return,finally中没有return): [java] view plain copy public class TryTest{ public 

sql server中如何查看执行效率不高的语句

sql server中,如果想知道有哪些语句是执行效率不高的,应该如何查看呢?下面就将为您介绍sql server中如何查看执行效率不高的语句,供您参考. 在测量功能时,先以下命令清除sql server的缓存 dbcc freeProcCache 在点击某个按钮,执行完后,再执行下面语句,就可以知道系统运行什么Sql和多少次了,其主要慢语句是那些了; SELECT creation_time  N'语句编译时间'         ,last_execution_time  N'上次执行时间'