【问题标题】:C# calculate time stamp [duplicate]C#计算时间戳[重复]
【发布时间】:2013-12-08 16:11:36
【问题描述】:

我想检查执行特定功能所需的时间,以便在我的程序中添加准确的时间延迟... 我试着在我的函数之前和之后写这个:

public static String (this DateTime value)
{
   return value.ToString("mmssffff");
}

然后我计算了两个结果之间的差异,我得到了 350。我不知道它是微秒还是毫秒......

你知道结果的含义吗?(350) 你有其他想法吗? 谢谢!

【问题讨论】:

  • 你为什么不让自己轻松一点并使用value.ToString("mm:ss:ffff");?您会立即知道输出的内容。
  • 我在你的代码中没有看到任何TimeStamp..
  • 不要使用DateTime 来测量经过的时间,而是使用StopWatch
  • 你看过使用StopWatch吗?

标签: c#


【解决方案1】:

使用Stopwatch 进行性能分析。

 Stopwatch sw = new Stopwatch();
  sw.Start();
  SayHello();
  sw.Stop();
  Console.WriteLine("Total time elapsed {0} millseconds", sw.Elapsed.TotalMilliSeconds);

【讨论】:

    【解决方案2】:

    我通常使用这样的东西:

    Stopwatch sw = Stopwatch.StartNew();
    // rest of the code
    sw.Stop();
    Console.WriteLine("Total time (ms): {0}", sw.ElapsedMilliseconds);
    

    【讨论】:

    • 为什么要将long 转换为long
    • 抱歉,不需要演员表。已编辑。
    【解决方案3】:

    您可以为此任务使用分析器。在许多情况下,单个方法会花费大量时间,但应该立即执行的子方法会花费大部分时间。事实上,我之前正在处理一个 Java 项目,并且我观察到它花费了不合理的时间来制定解决方案。我在那里使用了一个分析器,并且看到一个简单的对象实例化花费了大部分时间。当然,问题在于 Java 库因为那个构造函数而初始化了很多东西,所以我选择了一个替代方案。所以,我认为你应该使用分析器,阅读更多 herehere 以开始使用 C# 分析器。

    【讨论】:

    • 看起来很复杂..但我会试试的。
    猜你喜欢
    • 2015-05-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-04
    • 1970-01-01
    • 2021-05-04
    • 2011-12-28
    • 1970-01-01
    • 2015-11-04
    相关资源
    最近更新 更多