猿问

使用 Go 计算经过的时间(以毫秒为单位)

我正在使用以下代码(Go 版本 1.12)来记录经过的时间:


package time


func Elapsed() func() {

    start := time.Now()

    return func() {

        log.Debugf("Call took %v", time.Since(start))

    }

}

这通常适用于 ms:


“经过”:“945.714448ms”


但是,如果超过 1 秒,它会从 ms 变为 s:


“经过”:“3.577901569s”


如何强制它始终以毫秒为单位登录?

holdtom
浏览 136回答 1
1回答

临摹微笑

您可以在从返回的Duration上使用Milliseconds():Since()log.Debugf("Call took %vms", time.Since(start).Milliseconds())请注意,这不会添加单位(如果您需要它)。
随时随地看视频慕课网APP

相关分类

Go
我要回答