【问题标题】:Why is milliseconds in timespan not increasing between two DateTime.Now为什么时间跨度的毫秒数在两个 DateTime.Now 之间没有增加
【发布时间】:2018-09-23 07:53:42
【问题描述】:

我有这么简单的代码:

//LastUpdate = DateTime.Npw
//These two lines occur every frame
TimeSpan timeSpan = DateTime.Now - data.LastUpdate;
Debug.Log(timeSpan.Milliseconds);

但是这样做的结果显示毫秒并没有真正增加,它在 100 到 900 毫秒之间波动。它应该越来越大,因为过去的时间越来越长。

我已经检查过 LastUpdate 没有改变,所以这不是原因。

我想我误解了时间跨度的工作原理。我正在尝试获取当前帧的 LastUpdate 和 now 之间经过的毫秒数。

我用错了吗?我不明白这个问题。

【问题讨论】:

  • 您可能想改用StopWatch,因为它更适合测量时间跨度。

标签: c# time timestamp


【解决方案1】:

来自TimeSpan docs

.Milliseconds(强调我的):

获取当前 TimeSpan 结构所表示的时间间隔的毫秒分量

你想用.TotalMilliseconds:

获取当前 TimeSpan 结构的值,以整毫秒和小数毫秒表示。

【讨论】:

  • 糟糕。好吧,因为一个小错误,浪费了一个小时。谢谢
  • @WDKU 不用担心 :) 我很久以前也走这条路。
猜你喜欢
  • 2018-10-15
  • 1970-01-01
  • 1970-01-01
  • 2015-10-17
  • 1970-01-01
  • 2017-06-27
  • 1970-01-01
  • 1970-01-01
  • 2021-10-17
相关资源
最近更新 更多