• C#计算一段程序运行时间的三种方法


    第一种方法利用System.DateTime.Now:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    static void SubTest()
    {
    DateTime beforDT = System.DateTime.Now;
     
    //耗时巨大的代码
     
    DateTime afterDT = System.DateTime.Now;
    TimeSpan ts = afterDT.Subtract(beforDT);
    Console.WriteLine("DateTime总共花费{0}ms.", ts.TotalMilliseconds);
    }

    第二种用Stopwatch类(System.Diagnostics):

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    static void SubTest()
    {
    Stopwatch sw = new Stopwatch();
    sw.Start();
     
    //耗时巨大的代码
     
    sw.Stop();
    TimeSpan ts2 = sw.Elapsed;
    Console.WriteLine("Stopwatch总共花费{0}ms.", ts2.TotalMilliseconds);
    }

    第三种用API实现:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    [System.Runtime.InteropServices.DllImport("Kernel32.dll")]
    static extern bool QueryPerformanceCounter(ref long count);
    [System.Runtime.InteropServices.DllImport("Kernel32.dll")]
    static extern bool QueryPerformanceFrequency(ref long count);
    static void SubTest()
    {
    long count = 0;
    long count1 = 0;
    long freq = 0;
    double result = 0;
    QueryPerformanceFrequency(ref freq);
    QueryPerformanceCounter(ref count);
     
    //耗时巨大的代码
     
    QueryPerformanceCounter(ref count1);
    count = count1 - count;
    result = (double)(count) / (double)freq;
    Console.WriteLine("QueryPerformanceCounter耗时: {0} 秒", result);
    }
  • 相关阅读:
    python
    car-travel project
    数据库
    kafka笔记
    cloudera笔记
    上课笔记
    structured streaming
    SparkSQL
    流数据
    spark厦门大学
  • 原文地址:https://www.cnblogs.com/soundcode/p/6553136.html
Copyright © 2020-2023  润新知