Files

39 lines
434 B
Go
Raw Permalink Normal View History

package main
import (
"fmt"
"sync"
)
func notifier(signals chan int) {
close(signals)
}
func subscriber(signals chan int) {
<-signals
fmt.Println("signaled")
}
func main() {
signals := make(chan int)
wg := sync.WaitGroup{}
wg.Add(3)
go func() {
defer wg.Done()
notifier(signals)
}()
go func() {
defer wg.Done()
subscriber(signals)
}()
go func() {
defer wg.Done()
subscriber(signals)
}()
wg.Wait()
}