一、用C#自带的StopWatch函数

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
using System.Diagnostics;
 
namespace StopWatch
{
    class Program
    {
        static void Main(string[] args)
        {
            Stopwatch sw = new Stopwatch();
            sw.Start();
            //这里填写要执行的代码
            sw.Stop();
            Console.WriteLine("总运行时间:" + sw.Elapsed);
            Console.WriteLine("测量实例得出的总运行时间(毫秒为单位):" + sw.ElapsedMilliseconds);
            Console.WriteLine("总运行时间(计时器刻度标识):" + sw.ElapsedTicks);
            Console.WriteLine("计时器是否运行:" + sw.IsRunning.ToString());
        }
    }
}

运行结果如下:
总运行时间:00:00:00.0000013
测量实例得出的程序运行时间(毫秒为单位):0
总运行时间(计时器刻度标识):5
计时器是否运行:False

二、用API函数QueryPerformanceFrequency

 1 usingSystem;   
2
3 usingSystem.Threading;
4
5 classClass1
6
7 {
8
9 [System.Runtime.InteropServices.DllImport("Kernel32.dll")]
10
11 static extern bool QueryPerformanceCounter(ref longcount);
12
13 [System.Runtime.InteropServices.DllImport("Kernel32.dll")]
14
15 static extern bool QueryPerformanceFrequency(ref longcount);
16
17 [STAThread]
18
19 static void Main(string[] args)
20
21 {
22
23 longcount = 0;
24
25 longcount1 = 0;
26
27 longfreq = 0;
28
29 doubleresult = 0;
30
31 QueryPerformanceFrequency(reffreq);
32
33 QueryPerformanceCounter(refcount);
34
35 //需要测试的模块
36
37 intheisetoufa;
38
39 for(heisetoufa = 1; heisetoufa < 10000; heisetoufa++)
40
41 {
42
43 Console.WriteLine("第" + heisetoufa + "行");
44
45 if(heisetoufa == 5000)
46
47 {
48
49 Thread.Sleep(10000);
50
51 }
52
53 }
54
55 //需要测试的模块
56
57 QueryPerformanceCounter(refcount1);
58
59 count = count1 - count;
60
61 result = (double)(count) / (double)freq;
62
63 Console.WriteLine("耗时: {0} 秒", result);
64
65 Console.ReadLine();
66
67 }
68
69 }

C#测试程序运行时间的更多相关文章

  1. php测试程序运行时间和占用内存情况

    php测试程序运行时间和占用内存情况: $HeaderTime = microtime(true);//参数true表示返回浮点数值 /** *CODE */ printf(" total ...

  2. C# 测试程序运行时间和cpu使用时间

    方法一 Stopwatch类测试程序运行时间和cpu使用时间 添加命名空间using System.Diagnostics;使用实例如下 private Stopwatch sw = new Stop ...

  3. C#中提供的精准测试程序运行时间的类Stopwatch

    C#中提供的精准测试程序运行时间的类Stopwatch http://www.cnblogs.com/ret00100/archive/2010/08/06/1793680.html 在需要对程序的执 ...

  4. C#测试程序运行时间的方法

    C#测试程序运行时间的三种方法如下: (1)Datetime DateTime dtBegin = System.DateTime.Now;... DateTime dtEnnd = System.D ...

  5. 【VBA】测试程序运行时间,延时方法

    测试程序运行时间 Dim start As Date start = Now() Dim i As Long For i = 0 To 10000000 ' 10 million Next Debug ...

  6. C++中几种测试程序运行时间的方法<转>

    转的地址:https://www.cnblogs.com/silentteen/p/7532855.html 1.GetTickCount()函数 原理: GetTickCount()是获取系统启动后 ...

  7. [C.Sharp] TimeSpan的用法,获取测试程序运行时间

    TimeSpan的用法 TimeSpan是用来表示一个时间段的实例,两个时间的差可以构成一个TimeSpan实例,现在就来简单介绍一下几点重要的用法: a 先来介绍几个方法 TimeSpan.Minu ...

  8. PHP 测试程序运行时间 microtime函数用法

    PHP microtime() 函数PHP Date / Time 函数定义和用法microtime() 函数返回当前 Unix 时间戳和微秒数.语法microtime(get_as_float)参数 ...

  9. c/c++测试程序运行时间

    算法分析中需要对各种算法进行性能测试,下面介绍两种通用的测试方法,由于只用到标准c语言函数,所以在各种平台和编译器下都能使用. 方法1: clock()函数 开始计时:start = clock() ...

随机推荐

  1. 【Foreign】树 [prufer编码][DP]

    树 Time Limit: 10 Sec  Memory Limit: 256 MB Description Input Output Sample Input 3 2 2 1 Sample Outp ...

  2. 【BZOJ3624】【APIO2008】免费道路 [生成树][贪心]

    免费道路 Time Limit: 2 Sec  Memory Limit: 128 MB[Submit][Status][Discuss] Description Input Output Sampl ...

  3. poj3580 序列之王 fhqtreap

    fhqtreap的写法 操作其实都差不多哇 #include<cstdio> #include<cstring> #include<algorithm> using ...

  4. 【洛谷 P1251】 餐巾计划问题 (费用流)

    题目链接 我做的网络流24题里的第一题.. 想是不可能想到的,只能看题解. 首先,我们拆点,将一天拆成晚上和早上,每天晚上会受到脏餐巾(来源:当天早上用完的餐巾,在这道题中可理解为从原点获得),每天早 ...

  5. DP+贪心水题合集_C++

    本文含有原创题,涉及版权利益问题,严禁转载,违者追究法律责任 本次是最后一篇免费的考试题解,以后的考试题目以及题解将会以付费的方式阅读,题目质量可以拿本次作为参考 本来半个月前就已经搞得差不多了,然后 ...

  6. hdu 1399 Starship Hakodate-maru (暴力搜索)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1399 题目大意:找到满足i*i*i+j*(j+1)*(j+2)/6形式且小于等于n的最大值. #inc ...

  7. Linux内核完全剖析基于0.12内核

    控制寄存器(CR0,CR1,CR2,CR3)用于控制和确定处理器的操作模式以及当前执行任务的特性.CR0中含有控制处理器操作模式和状态的系统控制标志,CR1保留不用,CR2含有导致页错误的线性地址,C ...

  8. [转]C++ 指针和引用

    转自http://www.cnblogs.com/tangxiaobo199181/ 作者:算法生活 微信公众号:算法生活 出处:http://www.cnblogs.com/tangxiaobo19 ...

  9. 用IJ和gradle启动elasticsearch5.4.3

    环境准备 jdk gradle3.3+ idea git 从git clone源码 git checkout v5.4.3 打开项目 1. 在edit configurations添加new conf ...

  10. MVC架构中的controller的几种写法

    开始写代码之前,我们先来看一下spring MVC概念.一张图能够清晰得说明. 除了controller,我们需要编写大量代码外,其余的都可以通过配置文件直接配置. MVC的本质即是将业务数据的抽取和 ...