.NET中的Stopwatch
可以运行多长时间?如果达到该限制,它会换行为负数还是重新开始?
答案 0 :(得分:7)
Stopwatch.Elapsed
返回TimeSpan
。来自MaxValue
TimeSpan
的{{1}}:
此字段的值等于Int64.MaxValue标记。此值的字符串表示形式为正10675199.02:48:05.4775807,或略高于10,675,199天。
答案 1 :(得分:5)
对于托管代码,System.Diagnostics.Stopwatch类使用QPC作为 它的确切时间基础。
当QPC可用时,always is on Windows XP or later。
QPC多久翻身一次?
从最近的系统启动起不少于100年,并且基于所使用的底层硬件计时器可能更长。对于 大多数应用程序,翻转都不是问题。
假设Microsoft的Windows .NET实现,此限制是特定于硬件的,并且可能小于TimeSpan
或long
的大小,如其他答案所示。尽管还是足够大。祝你的程序运行100年好运!
答案 2 :(得分:2)
StopWatch
使用long
数据类型,其最大限制为 -
9,223,372,036,854,775,807
所以这是它可以运行的最长时间(滴答)。
虽然这次需要几年才能完成。