try to figure out why wait groups aren't workign
This commit is contained in:
parent
741286521a
commit
f4d755db16
|
@ -11,6 +11,7 @@ import (
|
||||||
type funcWait struct {
|
type funcWait struct {
|
||||||
f func()
|
f func()
|
||||||
wgF sync.WaitGroup
|
wgF sync.WaitGroup
|
||||||
|
val int
|
||||||
err error
|
err error
|
||||||
res int
|
res int
|
||||||
}
|
}
|
||||||
|
@ -27,7 +28,7 @@ func generateNumbers(total int, ch chan<- *funcWait, af *funcWait) {
|
||||||
log.Println("generateNumbers() END total =", total)
|
log.Println("generateNumbers() END total =", total)
|
||||||
}
|
}
|
||||||
|
|
||||||
func andlabsGoroutine(ch <-chan *funcWait, wgF *sync.WaitGroup) {
|
func andlabsGoroutine(ch <-chan *funcWait, wg *sync.WaitGroup) {
|
||||||
defer wg.Done()
|
defer wg.Done()
|
||||||
|
|
||||||
log.Println("andlabsGoroutine() START")
|
log.Println("andlabsGoroutine() START")
|
||||||
|
@ -39,7 +40,6 @@ func andlabsGoroutine(ch <-chan *funcWait, wgF *sync.WaitGroup) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
|
|
||||||
functionChan = make(chan *funcWait)
|
functionChan = make(chan *funcWait)
|
||||||
|
|
||||||
// syntax to get the return values from a channel
|
// syntax to get the return values from a channel
|
||||||
|
@ -49,12 +49,13 @@ func main() {
|
||||||
wg.Add(1)
|
wg.Add(1)
|
||||||
go andlabsGoroutine(functionChan, &wg)
|
go andlabsGoroutine(functionChan, &wg)
|
||||||
|
|
||||||
afunc.wgF = wg
|
// afunc.wgF = wg
|
||||||
afunc.f = func() {
|
afunc.f = func() {
|
||||||
log.Println("\tGOT INSIDE: running f() from inside the structure & inside the wait group goroutine")
|
log.Println("\tGOT INSIDE: running f() from inside the structure & inside the wait group goroutine", afunc.val)
|
||||||
}
|
}
|
||||||
|
|
||||||
for idx := 1; idx <= 10; idx++ {
|
for idx := 1; idx <= 10; idx++ {
|
||||||
|
afunc.val = idx * 20
|
||||||
generateNumbers(idx, functionChan, &afunc)
|
generateNumbers(idx, functionChan, &afunc)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue