((TimeSpan)(b  - a)).属性 可以获得相差的时间

解决方案 »

  1.   

    一般这种测试,不会精准的,你执行别的指令也需要时间的。别看一条DateTime.Now,实际上CPU要执行N条指令呢!TimeSpan可以获得比较高的精度。
      

  2.   

    我想测一下arrayList ,sortedList 和我自己写的是现类似功能的数据结构的性能
      

  3.   

    估计需要借助专业的工具,比如purify什么的
      

  4.   

    用((TimeSpan)(b  - a)).属性 可以获得相差的时间
      

  5.   

    //得到当前程序用的内存。
    long m = Environment.WorkingSet;
    //得到系统启动了多少毫秒。
    int t = Environment.TickCount;
    ....你的处理处理代码。
    //算用了多少时间。
    t= Environment.TickCount - t
    //用了多少内存。
    m = Environment.WorkingSet - m
      

  6.   

    计算两个时间之间的间隔是不行的,因为系统是多任务的,这段时间之内,cpu并不仅仅用于我自己写的程序。
    有没有方法知道某个线程占用的cpu时间?
      

  7.   

    一般作测试都是在尽量不运行其他的程序的情况下进行的,
    网上的一些评测也是这样。在说如果你单纯想证明一下速度我提供的方法基本已经够用了
    而且要精确到纳秒的话可以看看我的这篇文章.
    http://blog.csdn.net/flashelf/archive/2004/06/23/24336.aspx如果要写测试软件的话.
    .net 好像并不是很适合、如果调用 n 个 Windows API 来达到 效果、还不如用VC 或 Delphi
    这种和底层系统更贴近一点的开发语言来完成。
      

  8.   

    个人认为 java,.net 这些语言或框架
    都是为了商务而生的不适合做哪些、如杀毒软件、系统性能测试软件、等
    起码现在这个阶段是这样。
      

  9.   

    一个线程开始之后,会不断地获取cpu的时间片来完成任务,直到终止。那么,又没有简单的方法,来知道所有时间片的总合呢?