并发数控制
func main() {
//并发数
count := make(chan int, 5)
for i := 0; i < 5; i++ {
count <- 1
go func() {
fmt.Println("ok")
defer func() { <-count }()
}()
}
//确保执行完后主线程再退出
for i := 0; i < 5; i++ {
count <- 1
}
}
定时任务执行
func main() {
for {
ticker := time.NewTicker(2 * time.Second)
log.Println("ok")
<-ticker.C
}
}