【问题标题】:How long is a .NET DateTime/TimeSpan tick?.NET DateTime/TimeSpan 滴答声有多长?
【发布时间】:2010-10-31 16:27:51
【问题描述】:

.NET DateTime/TimeSpan 的刻度有多长?

【问题讨论】:

    标签: .net datetime time timespan


    【解决方案1】:

    请注意,虽然 DateTime.Now 的理论分辨率相当高,但分辨率(即更新频率)要低一些。

    显然,在现代系统上,DateTime.Now 的分辨率为 10 毫秒...参见 msdn.microsoft.com/en-us/library/system.datetime.now.aspx

    【讨论】:

      【解决方案2】:

      tick 是 .NET DateTimeTimeSpan 值类型的粒度单位。

      常见的转换有以下几种:

      1 tick = 100 nanoseconds
             = 0.1 microseconds
             = 0.0001 milliseconds
             = 0.0000001 seconds
      

      【讨论】:

      • 您在发布问题一分钟后回答了自己的问题?
      • 呃,StackOverflow 在常见问题解答中鼓励这种事情,不要为此投反对票。见:stackoverflow.com/questions/18557/…
      【解决方案3】:

      引用MSDN

      时间的最小单位是滴答声,等于 100 纳秒

      计量失败。

      【讨论】:

        【解决方案4】:

        虽然目前一个滴答声是 100 纳秒,但最好不要将其作为绝对值。而是使用“TimeSpan.TicksPerSecond”(或任何其他 TicksPerXxx 成员值)

        【讨论】:

        • 这是真的。不要在你的代码中硬编码这些。但是,它们是绝对的,不会被 Microsoft 更改。这篇文章的原因是有时需要在计算器上做这个数学运算,我想让这个图表可用。
        • 创建 10 秒时间跨度的示例:new TimeSpan(TimeSpan.TicksPerSecond * 10)
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-03-05
        • 1970-01-01
        • 2014-05-24
        相关资源
        最近更新 更多