У меня есть время того же дня в минутах (т.е. часы * 60 + минуты) в качестве входных данных, необходимо преобразовать его в time.Time
, вот моя попытка сделать тоже самое .Оптимальный способ получить время в UTC, учитывая сегодняшнее время как минут в golang
Пример
Input: 780
Output : 2017-01-29 13:00:51.992871217 +0000 UTC
Код
func MinutesToTime(minutes int) time.Time {
t := time.Now().UTC() //may be cached
h, m, _ := t.Clock()
diff := minutes - (h*60 + m)
t = t.Add(time.Duration(diff) * time.Minute)
return t
}
Сомнение
- Есть ли какие-либо функции, которые
time
пакет подвергает которые могли бы помочь мне оптимизировать этот - Должен ли я использовать gettimeofday системы() вызов непосредственно
- Would пытается реализовать vDSO быть избыточна, реализация vDSO только для amd64 находится в go source code
PS 59-сек эээ приемлема, минута моя низкая зернистость
вам нужен, 51.992871217 часть? – YOU
Нет, поскольку мой ввод находится в минутах +/- 59 секунд в порядке –