2

嗨,我似乎无法理解在 Go 中进行时间算术的正确方法。

我有一个时间“对象”后来初始化为Now()并存储。

   insertTime time.Time

稍后,我需要查看该项目是否超过 15 分钟。

我该怎么做呢?我是否需要创建一个15 分钟的持续时间将其添加到当前时间并进行比较?如果是这样,我该怎么做?

4

1 回答 1

8

func (Time) After会有所帮助,我相信。架构:

when := time.Now()

...

if time.Now().After(when.Add(15*time.Minute)) {
        // Conditionally process something if at least 15 minutes elapsed
}

when例如,可以是某个结构的字段,而不是变量。

替代方法:

deadline := time.Now().Add(15*time.Minute)

...

if time.Now().After(deadline) {
        // Conditionally process something if at least 15 minutes elapsed
}

我个人更喜欢后面的版本。

于 2013-03-13T13:37:39.950 回答