要计算go中的时间间隔,您可以使用
start := time.Now() // long time consuming task duration := time.Since(start)
登录后复制
但是你知道吗,go 中的 time 包实际上有两个时间,而 time.since() 实际上只测量处理时间(单调时钟),而不是真实时间(挂钟)?
例如,如果任务很长,长达一整夜,并且您的计算机进入睡眠状态。然后早上你可能会过来看看,持续时间只有4个小时,而总共已经过去了10个小时。
go 中的时间包指出
操作系统提供了“挂钟”(会因时钟同步而发生变化)和“单调时钟”(不会发生变化)。一般规则是,挂钟用于报时,单调钟用于测量时间。
在上面的示例中,它真正告诉您的是,您的程序主动运行了 4 个小时,但计算机休眠了 6 个小时,因此您总共等待了 10 个小时。如果电脑没有休眠的话,4个小时就搞定了。
那么如果你想测量wall time该怎么办呢?您可以使用 round(0) 函数。 t = t.round(0) 将删除 t 中的单调时钟。
以上就是去时间和它的两个时钟的详细内容,更多请关注抖狐科技其它相关文章!
-
叫叫学院怎么绑定亲情号 叫叫app亲情号绑定教程
叫叫学院亲情号绑定难题当你想要为孩子绑定叫叫学院亲情号时,可能会面临一些困难。php小编苹果今天为你带来详细的绑定教程,解决困扰。阅读下方内容,我们将一步一步指导你完成亲情号绑定,让家长轻松管理孩子的...
-
cmd如何执行dos命令
通过在命令提示符中输入 dos 命令并导航至其目录,可以在 windows 中执行 dos 命令。这些命令包括列出文件(dir)、导航目录(cd)和查看命令帮助(help)。在执行之前,仔细阅读命令信...
-
如何使用 Golang 函数迭代数组?
摘要:在 golang 中,可以使用 for 循环或内置函数(如 range、len、append)迭代数组。内置函数提供的便捷方法包括:range:返回元素及其索引len:获取数组长度append:...
-
Java函数式编程在数据处理中如何减少错误?
函数式编程可减少数据处理错误,通过以下方法:使用不可变集合防止意外修改数据;应用纯函数确保执行一致性;利用函数式组合创建简洁可读的处理管道;利用高阶函数抽象复杂行为,提高组织性和可维护性。Java 函...
-
EA首席执行官表示AI现在是“我们业务的核心”
EA 日前举办了投资者日活动,首席执行官 Andrew Wilson 谈到了该公司对生成式人工智能的投入。在直播演示中,Wilson 提到 EA 的游戏一直处于技术曲线的最前沿,而不同形式的人工智能始...