System.Diagnostics.Stopwatch stopwatch = new System.Diagnostics.Stopwatch(); stopwatch.Start(); //任务 1... stopwatch.Stop(); _result.Text += "<p>任务 1 用时:" + stopwatch.ElapsedTicks + "。</p>"; stopwatch.Reset(); //若没有 Reset,则会把任务 1 的用时累计进入任务 2 stopwatch.Start(); //任务 2... stopwatch.Stop(); _result.Text += "<p>任务 2 用时:" + stopwatch.ElapsedTicks + "。</p>";
int startTime=System.Environment.TickCount; ......任务...... int endTime=System.Environment.TickCount; int runTime=endTime-startTime;(注意单位是毫秒哦!)
TimeSpan对象表示时间间隔或持续时间,按正负天数、小时数、分钟数、秒数以及秒的小数部分进行度量。用于度量持续时间的最大时间单位是天。更大的时间单位(如月和年)的天数不同,因此为保持一致性,时间间隔以天为单位来度量。
TimeSpan 对象的值是等于所表示时间间隔的刻度数。一个刻度等于 100 纳秒,TimeSpan 对象的值的范围在 MinValue 和 MaxValue 之间。
TimeSpan 值可以表示为 [-]d.hh:mm:ss.ff,其中减号是可选的,它指示负时间间隔,d分量表示天,hh 表示小时(24 小时制),mm 表示分钟,ss 表示秒,而 ff为秒的小数部分。即,时间间隔包括整的正负天数、天数和剩余的不足一天的时长,或者只包含不足一天的时长。例如,初始化为 1.0e+13 刻度的 TimeSpan 对象的文本表示“11.13:46:40”,即 11 天,13 小时,46 分钟和 40 秒。
用法:
/// <summary> /// Description: /// 1. 获取"当前时间"与"比较时间"之间的毫秒差 /// 2. 静态方法 /// Author : 付义方 /// Create Date: 2014-03-06 /// </summary> /// <param name="compareTime">比较时间</param> /// <returns>毫秒差</returns> public static int GetDifferMilliSecond(DateTime compareTime) { return DateTime.Now.Subtract(compareTime).Milliseconds; }
DateTime tempTime = DateTime.Now; _logger.Info("Task Wait begin", string.Format("{0}开始执行{1}个任务", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"), execTask)); try { Task.WaitAll(tasks);//等待执行发送任务完成 UpTaskStatus(_MdDatacubeofjobinfotaskModel.PlanCode, _ActionSet); //判断该批次数据是否执行完毕 } catch { } _logger.Info("Task Wait end", string.Format("{0}已执行完成{1}个任务, 耗时{2}/ms", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"), execTask, TimeHelper.GetDifferMilliSecond(tempTime)));
原文:http://blog.csdn.net/fuyifang/article/details/45059053