小编Che*_*wda的帖子

我如何等到接收器通道在 golang 中完成它的执行?

我有这个示例代码,我正面临这个同步问题,任何人都可以帮助我如何实现这一点。

package main

import "fmt"

func main() {

baseChan := make(chan int)
go func(bCh chan int){
for {
select{
    case stats, _ := <- bCh:
    fmt.Println("base stats", stats)
}}
}(baseChan)

second := make(chan int)
go func (sCh chan int) {
fmt.Println("second channel")
for {
select {
case stats, _ := <- sCh:
    fmt.Println("seconds stats", stats)
    baseChan <- stats
}
}
}(second)
runLoop(second)
}

func runLoop(second chan int) {
 for i := 0; i < 5; i++ {
fmt.Println("writing i", i) …
Run Code Online (Sandbox Code Playgroud)

go goroutine

1
推荐指数
1
解决办法
580
查看次数

标签 统计

go ×1

goroutine ×1