首页 > 解决方案 > 在 Go 中使用计时器来触发条件?

问题描述

我正在尝试在我的一个功能中使用计时器,以便我可以在我正在制作的游戏中对射弹造成延迟。我用过 Swift,代码是这样的:

if someBool == false {
//call this function
func .....
someBool == true

Timer.scheduledTimer(withTimeInterval: 0.02, repeats: false, block: { timer in
                self.someBool== false
            })
}

我想知道是否有一个非常简单的实现来实现这一点,我并不太关心性能,因为这不是一个生产项目。谢谢!

标签: gotimer

解决方案


在 goroutine 中使用time.Afterhttps://golang.org/pkg/time/#After ):

func  myFunc() {
  ...
  if condition {
    go func() {
        <-time.After(interval)
       // Do things
    }()  
  }
...

推荐阅读