首页 > 解决方案 > 有没有办法可以减少启动/停止秒表和测量毫秒所需的代码?

问题描述

目前我的代码装饰有很多这样的代码:

Stopwatch stopWatch = new Stopwatch(); stopWatch.Start();
InitializeComponent();
stopWatch.Stop(); App.CoHomeMSecs = stopWatch.ElapsedMilliseconds;

虽然我意识到这里没有太多代码,但有什么方法可以减少与初始化秒表、启动、停止和设置值相关的代码。

例如,我可以将进程放入一个返回毫秒数并将代码块作为参数的方法中吗?

标签: c#

解决方案


可以自己烤,加胡椒和盐调味

public static long Time(Action action)
{
   var stopWatch =  Stopwatch.StartNew();
   action();
   return stopWatch.ElapsedMilliseconds;
}

用法

Console.WriteLine(Time(() => Thread.Sleep(100)));

输出

100

在这里演示


推荐阅读