码迷,mamicode.com
首页 > Windows程序 > 详细

C# Stopwatch获取循环中某操作的时间消耗

时间:2016-02-26 17:14:04      阅读:278      评论:0      收藏:0      [点我收藏+]

标签:

 

  在C#中通常使用DateTime来表示当前时间,可以在一个操作的前后分别使用一个DateTime对象获取当前时间,再将两个DateTime对象相减获得时间差(TimeSpan对象),从而得到这个操作耗费了多少时间。

 

  但是,在某些情况下,需要循环获取执行一个操作,而这个操作可能并没有耗费太多的时间,只是循环的量级很大的时候,消耗的时间还是很可观的。这时如果使用上面的方法会比较麻烦。

C#提供了一个类Stopwatch,在操作开始前,调用Stopwatch对象的Start方法;操作结束后调用Stopwatch对象的Stop方法。在循环结束后,调用Stopwatch对象的Elapsed对应的属性可以获取总时间。

 

       Worksheet sheet = ExcelAddIn2.Globals.ThisAddIn.Application.ActiveSheet;
            Range allCells = sheet.Cells;

            Stopwatch addressWatch = new Stopwatch();
            Stopwatch addressLocalWatch = new Stopwatch();
            
            foreach (Range cell in allCells)
            {
                addressWatch.Start();
                var address = cell.Address;
                addressWatch.Stop();

                addressLocalWatch.Start();
                var addressLocal = cell.AddressLocal;
                addressLocalWatch.Stop();
            }

            double addressCoast = addressLocalWatch.Elapsed.TotalMilliseconds;

 

C# Stopwatch获取循环中某操作的时间消耗

标签:

原文地址:http://www.cnblogs.com/huanyou/p/5220718.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!