TimeWatcher
TimeWatcher
类是对 Stopwatch
类的封装,Watch 方法用于记录一个方法的执行时间。如下所示:
[TestMethod]
public void TestWatch()
{
var time = TimeWatcher.Watch(CallOther);
Console.WriteLine(time);
}
private void CallOther()
{
//比较耗时的业务处理方法
}
[TestMethod]
public async Task TestWatchAsync()
{
var time = await TimeWatcher.WatchAsync(CallOtherAsync);
Console.WriteLine(time);
}
private async Task CallOtherAsync()
{
//比较耗时的业务处理方法
}
WatchApart 方法用于记录一组方法分别执行的时间,返回的 TimeSpan
也是一组。如下所示:
[TestMethod]
public void TestWatchApart()
{
var times = TimeWatcher.WatchApart(CallOther1, CallOther2);
foreach (var time in times)
{
Console.WriteLine(time);
}
}
private void CallOther1()
{
//比较耗时的业务处理方法
}
private void CallOther2()
{
//比较耗时的业务处理方法
}
而 WatchAround 方法与 WatchApart 方法的不同之处在于,WatchAround 方法记录的是每一个方法执行结束的时间点。