package main
import (
"fmt"
"time"
)
func main() {
t := time.NewTicker(time.Second)
for v := range t.C {
fmt.Println("hello, ", v)
}
}

package main
import (
"fmt"
"time"
)
func main() {
select {
case <- time.After(time.Second):
fmt.Println("after")
}
}
上面代码一秒后执行

package main
import (
"fmt"
"runtime"
"time"
)
func main() {
num := runtime.NumCPU()
runtime.GOMAXPROCS(num - 1)
for i := 0; i < 16; i++ {
go func() {
for {
t := time.NewTicker(time.Second)
select {
case <-t.C:
fmt.Println("timeout")
}
t.Stop()
}
}()
}
time.Sleep(time.Second * 100)
}
备注:使用定时器后,需要关闭,不关闭存在内存泄漏风险。
原文:http://www.cnblogs.com/shhnwangjian/p/7495033.html