Метод time.Duration.Microseconds

Метод Microseconds преобразует значение типа time.Duration в количество микросекунд, возвращая результат в виде int64. Этот метод удобен, когда вам нужно получить точное значение длительности в микросекундах без использования дробной части, например, для логирования или сравнения.

Синтаксис

gofunc (d Duration) Microseconds() int64

Пример

Давайте создадим длительность в 5 секунд и преобразуем ее в микросекунды:

gopackage main

import (
  "fmt"
  "time"
)

func main() {
  duration := 5 * time.Second
  micros := duration.Microseconds()
  fmt.Printf("%d microseconds\n", micros)
}

Результат выполнения кода:

go"5000000 microseconds"

Пример

Рассмотрим пример с длительностью, не являющейся целым числом секунд, например, 1.5 секунды:

gopackage main

import (
  "fmt"
  "time"
)

func main() {
  duration := 1500 * time.Millisecond
  micros := duration.Microseconds()
  fmt.Printf("%d microseconds\n", micros)
}

Результат выполнения кода:

go"1500000 microseconds"

Пример

Используем метод Microseconds для вычисления разницы между двумя моментами времени:

gopackage main

import (
  "fmt"
  "time"
)

func main() {
  start := time.Now()
  time.Sleep(2 * time.Second)
  elapsed := time.Since(start)
  micros := elapsed.Microseconds()
  fmt.Printf("Elapsed: %d microseconds\n", micros)
}

Результат выполнения кода (значение будет зависеть от точности измерения):

go"Elapsed: 2000123 microseconds"

Смотрите также

  • метод time.Duration.Seconds,
    который возвращает длительность в секундах
  • метод time.Duration.Milliseconds,
    который возвращает длительность в миллисекундах
  • метод time.Duration.Nanoseconds,
    который возвращает длительность в наносекундах
  • функцию time.Since,
    которая возвращает время, прошедшее с заданного момента