```go
package main
import (
"fmt"
"bufio"
"os"
)
func main(){
ch := make(chan string)
go func(){
for range ch {
fmt.Println(<-ch)
}
}()
input := bufio.NewScanner(os.Stdin)
for input.Scan() {
ch <- input.Text()
}
}
```
输入的有一半打印不出来
更多评论
你写错了,range ch 就已经读了一次 channel,你里面 fmt.Println 再读一次,自然得输入两次才能打印一次。
改为:
```go
for v := range ch {
fmt.Println(v)
}
```
#1