About me • Software Engineer in Mediatek • Member of Drone CI/CD Platform • Member of Gitea Platform • Member of Gin Golang Framework • Maintain Some GitHub Actions Plugins. • Teacher of Udemy Platform: Golang + Drone
found := make(chan int) queue := make(chan int) go func(queue chanfor i := 0; i < jobCount; i++ { queue } close(queue) }(queue) for i := 0; i < concurrencyProcesses; i++ { go func(queue for val := range queue { defer wg.Done() found } }(queue, found) } jobCount = 100 concurrencyProcesses = 10
Agent subscribe the cancel event for { select { case return false, ctx.Err() case c.Lock() _, ok := c.cancelled[id] c.Unlock() if ok { return true, nil } case return true, nil } }