Модуль std/monotimes реализует монотонные временные метки. Монотонная временная метка представляет время, прошедшее с некоторой системной точки отсчёта. Монотонные временные метки гарантированно не убывают, что означает, что следующее гарантированно сработает:
Пример:
import std/monotimes
let a = getMonoTime()
let b = getMonoTime()
assert a <= b
Это не гарантируется для типа times.Time! Это означает, что тип MonoTime следует использовать при измерении временных интервалов с высокой точностью.
Однако, поскольку MonoTime представляет время, прошедшее с момента неизвестного начального момента, его нельзя преобразовать в читаемую человеком временную метку. Если это требуется, следует использовать тип times.Time.
Тип MonoTime хранит временную метку с разрешением в наносекунды, но обратите внимание, что фактическое поддерживаемое разрешение времени отличается для разных систем.