У меня проблема, когда time.Since () выдает 0s.Кто-нибудь может объяснить неожиданно, почему это может произойти?Я пытаюсь измерить время выполнения вызова веб-сервера.
func handle(f http.HandlerFunc) http.HandlerFunc {
return func(w http.ResponseWriter, r *http.Request) {
log.Println(r.URL.Path)
start := time.Now()
f(w, r)
elapsed := time.Since(start)
log.Printf("took %s", elapsed)
}
}
Он выдает этот вывод, где иногда выдает "взял 0с" .Я что-то здесь упускаю?
2019/01/24 23:28:45 /hello
2019/01/24 23:28:45 took 1.9878ms
2019/01/24 23:28:45 /hello
2019/01/24 23:28:45 took 998.6µs
2019/01/24 23:28:46 /hello
2019/01/24 23:28:46 took 1.0007ms
2019/01/24 23:28:46 /hello
2019/01/24 23:28:46 took 0s
2019/01/24 23:28:46 /hello
2019/01/24 23:28:46 took 0s
2019/01/24 23:28:46 /hello
2019/01/24 23:28:46 took 998.8µs
2019/01/24 23:28:47 /hello
2019/01/24 23:28:47 took 0s
2019/01/24 23:28:47 /hello
2019/01/24 23:28:47 took 0s