我正在寻找启动未知数量的 goroutines。在此示例中添加到number
频道。然后在messages
频道滚动时从频道中读取消息。
当我希望在此代码中看到所有 100 条消息时,为什么我只看到一条消息?如何查看添加的所有号码的消息?
package main
import (
"fmt"
)
func Run(numbers chan int, messages chan string) {
stuff := <-numbers
messages <- fmt.Sprintf("Ran %d", stuff)
}
func main() {
var numbers = make(chan int)
var messages = make(chan string)
go Run(numbers, messages)
for i := 0; i < 100; i++ {
go func(i int) { numbers <-i }(i)
}
msg := <-messages
fmt.Println(msg)
}
哈士奇WWW
相关分类