三种定时方法
package main
import (
"time"
"fmt"
)
func main() {
time.Sleep(time.Second)
myTimer := time.NewTimer(time.Second * 2)
nowTime := <- myTimer.C
fmt.Println( nowTime)
fmt.Println( time.Now())
nowTime2 := <-time.After(time.Second * 2)
fmt.Println(nowTime2)
}
重新及消除定时
func main() {
myTimer := time.NewTimer(time.Second * 10)
myTimer.Reset(1 * time.Second)
go func() {
for {
<- myTimer.C
fmt.Println("子go程,定时完毕")
}
}()
for {
;
}
}
周期定时
package main
import (
"fmt"
"time"
)
func main() {
fmt.Println("now: ", time.Now())
myTicker := time.NewTicker(time.Second)
go func() {
for {
nowTime := <-myTicker.C
fmt.Println("nowTime:", nowTime)
}
}()
for {
}
}