You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
87 lines
2.4 KiB
87 lines
2.4 KiB
using System;
|
|
using System.Collections.Generic;
|
|
using System.Text;
|
|
using System.Diagnostics;
|
|
/// <summary>
|
|
/// 时间调试器,用来计算程序的运行时间
|
|
/// </summary>
|
|
namespace Shentun.Utilities
|
|
{
|
|
public static class TimeDebuger
|
|
{
|
|
private static DateTime _startTime;
|
|
private static DateTime _lastTime;
|
|
/// <summary>
|
|
/// 计时器启动
|
|
/// </summary>
|
|
public static void Start()
|
|
{
|
|
|
|
_startTime = System.DateTime.Now;
|
|
_lastTime = _startTime;
|
|
|
|
}
|
|
/// <summary>
|
|
/// 最近两个时间的间隔
|
|
/// </summary>
|
|
public static double IntervalTime
|
|
{
|
|
get
|
|
{
|
|
|
|
if (_lastTime == null)
|
|
return 0;
|
|
var currentTime = System.DateTime.Now;
|
|
TimeSpan ts = currentTime.Subtract(_lastTime);
|
|
_lastTime = currentTime;
|
|
return ts.TotalMilliseconds;
|
|
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// 输出运行间隔时间
|
|
/// </summary>
|
|
/// <param name="name"></param>
|
|
public static void IntervalTimeWriteLine(string name)
|
|
{
|
|
|
|
if (_lastTime == null)
|
|
return ;
|
|
var currentTime = System.DateTime.Now;
|
|
TimeSpan ts = currentTime.Subtract(_lastTime);
|
|
_lastTime = currentTime;
|
|
if (string.IsNullOrEmpty(name))
|
|
name = "";
|
|
Debug.WriteLine(name + "运行时间:" + ts.TotalMilliseconds.ToString());
|
|
|
|
}
|
|
/// <summary>
|
|
/// 从计时器启动到现在的总运行时间
|
|
/// </summary>
|
|
public static double SumRunTime
|
|
{
|
|
get
|
|
{
|
|
|
|
var currentTime = System.DateTime.Now;
|
|
TimeSpan ts = currentTime.Subtract(_startTime);
|
|
return ts.TotalMilliseconds;
|
|
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// 输出总运行时间
|
|
/// </summary>
|
|
/// <param name="name"></param>
|
|
public static void SumRunTimeWriteLine(string name)
|
|
{
|
|
|
|
var currentTime = System.DateTime.Now;
|
|
TimeSpan ts = currentTime.Subtract(_startTime);
|
|
if (string.IsNullOrEmpty(name))
|
|
name = "";
|
|
Debug.WriteLine($"{name}总运行时间:{ts.TotalMilliseconds.ToString()} 毫秒");
|
|
|
|
}
|
|
}
|
|
}
|