日期:2014-05-20  浏览次数:20877 次

相同的代码,4.0性能比2.0差这么多?
下面的代码用4.0编译比用3.5编译执行的时间高出许多,不知道大家跑出来的结果是不是和我一样,谁知道有什么详细的文档资料能解释这个现象?

C# code

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Diagnostics;
using System.Data.SqlClient;
using System.Security.Permissions;

namespace ConsoleApplication1
{

 [SqlClientPermission(SecurityAction.Demand)]
 public class Class1
 {
  public void Test()
  { }
 }

 class Program
 {
  static void Main(string[] args)
  {
   Class1 c;

   Stopwatch w = new Stopwatch();
   w.Start();
   for (int i = 0; i < 10000; i++)
   {
    c = new Class1();
    c.Test();
   }
   w.Stop();

   Console.WriteLine(w.ElapsedMilliseconds);
  }
 }
}



------解决方案--------------------
一般高版本的插件多了自然就慢点。
------解决方案--------------------
时间是不是花在了你引用的一些根本没用到的dll命名空间了,影响了一部分时间。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Diagnostics;
using System.Data.SqlClient;
using System.Security.Permissions;
------解决方案--------------------
楼主挺有钻研精神。电脑上没装4.0的,不然就测试一下。
------解决方案--------------------
探讨
时间是不是花在了你引用的一些根本没用到的dll命名空间了,影响了一部分时间。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Diagnostics;
using System.Data.SqlClient;
using Syste……

------解决方案--------------------
还这样的啊,以前一直没注意,原来没用的命名空间的引用也造成时间的的浪费啊。
学习了
------解决方案--------------------
学习了
------解决方案--------------------
在代码编辑窗口点右键,选择“组织Using”>“移除未使用的Using”,编译器可以自动将你没有用到的那些引用移除掉。
------解决方案--------------------
mark,
------解决方案--------------------
探讨

在代码编辑窗口点右键,选择“组织Using”>“移除未使用的Using”,编译器可以自动将你没有用到的那些引用移除掉。

------解决方案--------------------
真没想到
------解决方案--------------------
4.0内部的处理有复杂了。
------解决方案--------------------
2.0 5ms
3.5 也是5ms
4.0 没有
------解决方案--------------------
为何都用4.0了
------解决方案--------------------
淡定,淡定!!
------解决方案--------------------
嗯,是差很多,2.0耗时3毫秒,4.0耗时543毫秒
------解决方案--------------------
探讨

时间是不是花在了你引用的一些根本没用到的dll命名空间了,影响了一部分时间。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Diagnostics;
using System.Data.SqlClient;
using Syst……

------解决方案--------------------
命名空间也会影响效率,,,不太清楚。。。自己没证实过。。杯具。
------解决方案--------------------
lz说的是编译速度还是运行速度?
------解决方案--------------------