我正在用LinqPad开发一个程序,该程序将清理文件并返回csv我好奇的信息。我需要跟踪某些进程执行所花费的时间,并试图使用Stopwatch方法执行该操作。
最终我想做的就是这样:
void main()
{
T runTime = Timer(someProcess());
}
void someProcess(){...}
public static class Diagnostics
{
…
public static T Timer(???)
{
… (execute whatever we're timing)
return T timeTookToExe;
}
}
答案 0 :(得分:2)
我不确定T
应该是什么,但是您可以让Timer
收到一个委托:
public static TimeSpan Timer(Action action)
{
Stopwatch sw = new Stopwatch();
sw.Start();
action.Invoke();
sw.Stop();
return sw.Elapsed;
}
然后使用它,您将执行以下操作:
TimeSpan runTIme = Timer(() => someProcess());