.net 性能测试2--变量和数据对象的使用
2009-04-23 17:00
399 查看
1,测试变量和Datarow的访问
代码一:
代码二:
测试结果:
代码段一的时间546.875
代码段二的时间3890.625
2,测试变量和datareader的访问,替换对应的数据库对象后测试结果如下:
531.25;
2578.125
总结:
在对同一数据库字段访问不频繁的情况下建议使用原对象,否则请先赋值给变量;
代码段2的耗时不稳定,有的时候代码段2的本身耗时相差2倍
代码一:
private void button1_Click_1(object sender, EventArgs e) { StringBuilder sb = new StringBuilder(); DateTime d1 = DateTime.Now; for (int i = 0; i < 20; i++) { try { string strSql = "select top 100 * from t_csp_vesselschedule "; DataTable dt = db.ExecuteDataSet(CommandType.Text, strSql).Tables[0]; foreach (DataRow d in dt.Rows) { string a1 = d["id"].ToString(); for (int m = 0; m < 1000; m++) { sb.Append(a1); } } } catch(Exception ex) { throw ex; } } DateTime d2 = DateTime.Now; TimeSpan t1=d2-d1; label1.Text = t1.TotalMilliseconds.ToString(); textBox3.Text = label1.Text; }
代码二:
private void button3_Click(object sender, EventArgs e) { StringBuilder sb = new StringBuilder(); DateTime d1 = DateTime.Now; for (int i = 0; i < 20; i++) { try { string strSql = "select top 100 * from t_csp_vesselschedule "; DataTable dt = db.ExecuteDataSet(CommandType.Text, strSql).Tables[0]; foreach (DataRow d in dt.Rows) { //string a1 = d["id"].ToString(); for (int m = 0; m < 1000; m++) { sb.Append(d["id"].ToString()); } } } catch (Exception ex) { throw ex; } } DateTime d2 = DateTime.Now; TimeSpan t1 = d2 - d1; label2.Text = t1.TotalMilliseconds.ToString(); textBox4.Text = label2.Text; }
测试结果:
代码段一的时间546.875
代码段二的时间3890.625
2,测试变量和datareader的访问,替换对应的数据库对象后测试结果如下:
531.25;
2578.125
总结:
在对同一数据库字段访问不频繁的情况下建议使用原对象,否则请先赋值给变量;
代码段2的耗时不稳定,有的时候代码段2的本身耗时相差2倍
相关文章推荐
- .NET程序内存分析工具CLRProfiler的使用(性能测试)
- JMeter性能测试基础 (2) - 变量的使用
- [.net] 使用SqlBulkCopy提高导入数据的性能
- .Net最佳实践3:使用性能计数器收集性能数据
- 使用JDBC插入大量数据的性能测试
- 使用 SqlDependency 对象缓存数据以提高性能
- 使用AWK构造性能测试数据
- 使用JDBC插入大量数据的性能测试
- .NET 2.0下反射和CodeDom访问对象属性性能测试比较
- JMeter性能测试基础 (2) - 变量的使用
- 《使用云计算和大数据进行性能测试》
- OpenJDK源码研究笔记(五)-缓存Integer等类型的频繁使用的数据和对象,大幅度提升性能(一道经典的Java笔试题)
- (转)在.NET程序运行过程中,什么是堆,什么是栈?什么情况下会在堆(栈)上分配数据?它们有性能上的区别吗?“结构”对象可能分配在堆上吗?什么情况下会发生,有什么需要注意的吗?
- http中使用json封装数据的性能测试
- oracle 大对象(lob)类型使用性能测试
- 使用JDBC插入大量数据的性能测试
- OpenJDK源码研究笔记(五)-缓存Integer等类型的频繁使用的数据和对象,大幅度提升性能(一道经典的Java笔试题)
- 使用JDBC插入大量数据的性能测试
- 使用 W3C Performance 对象通过 R 和 JavaScript 将浏览器内的性能数据可视化[转]
- .Net对象测试台的使用