| 123456789101112131415161718192021222324252627282930 |
- package main
- import (
- "fmt"
- "sync"
- "time"
- )
- func service(wg *sync.WaitGroup, instance int) {
- time.Sleep(2 * time.Second)
- fmt.Println("Service called on instance", instance)
- wg.Done()
- }
- func main() {
- wgExample()
- }
- func wgExample() {
- fmt.Println("main() started")
- var wg sync.WaitGroup
- for i := 1; i <= 3; i++ {
- wg.Add(1) // increment counter
- go service(&wg, i)
- }
- wg.Wait() // blocks here
- fmt.Println("main() stopped")
- }
|