包装时间
单调时钟
*** 作系统同时提供“挂钟”和“单调时钟”,“挂钟”会随时钟同步的变化而变化。一般规则是壁钟用于指示时间,单调时钟用于测量时间。在该程序包中,不是拆分API,而是按时间返回时间。现在,它既包含挂钟读数又包含单调时钟读数。以后的计时 *** 作将使用挂钟读数,但以后的时间测量 *** 作(特别是比较和减法)将使用单调时钟读数。
例如,即使在计时 *** 作期间更改了挂钟,此代码也始终会计算约20毫秒的正经过时间:
start := time.Now()... operation that takes 20 milliseconds ...t := time.Now()elapsed := t.Sub(start)类似的其他用法,例如time.Since(start),time.Until(deadline)和time.Now()。Before(deadline),对挂钟重置也同样有效。
从Go 1.9(发布于2017年8月24日)开始,Go在持续时间内使用单调时钟。
请参阅提案:Go中的单调经过时间测量。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)