РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
1387 of 1593 menu

Функция flag.DurationVar

Функция flag.DurationVar используется для привязки значения флага командной строки к переменной типа time.Duration. В первый параметр передается указатель на переменную, которая будет хранить значение. Во второй параметр передается имя флага (строка). Третий параметр — значение по умолчанию. Четвертый параметр — описание флага (используется в справке). После вызова функции и вызова flag.Parse, переменная будет содержать значение интервала времени, переданное пользователем.

Синтаксис

flag.DurationVar(ptr, name, value, usage)

Пример

Давайте создадим программу, которая принимает флаг -timeout и выводит его значение:

package main import ( "flag" "fmt" "time" ) func main() { var timeout time.Duration flag.DurationVar(&timeout, "timeout", 5*time.Second, "timeout duration") flag.Parse() fmt.Println(timeout) }

Результат выполнения программы без дополнительных флагов:

"5s"

Если запустить программу с флагом:

go run main.go -timeout 10s

Результат выполнения программы:

"10s"

Пример

Рассмотрим пример, где используются несколько флагов разного типа. Создадим программу с флагами -timeout и -interval:

package main import ( "flag" "fmt" "time" ) func main() { var timeout time.Duration var interval time.Duration flag.DurationVar(&timeout, "timeout", 30*time.Second, "timeout for operation") flag.DurationVar(&interval, "interval", 5*time.Minute, "interval between checks") flag.Parse() fmt.Printf("Timeout: %s, Interval: %s\n", timeout, interval) }

Запустим программу с указанными флагами:

go run main.go -timeout 1m30s -interval 10m

Результат выполнения программы:

"Timeout: 1m30s, Interval: 10m0s"

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

  • функцию flag.Duration,
    которая возвращает указатель на значение флага длительности
  • функцию flag.StringVar,
    которая привязывает флаг к строковой переменной
  • функцию flag.IntVar,
    которая привязывает флаг к целочисленной переменной
  • функцию flag.BoolVar,
    которая привязывает флаг к логической переменной
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить