の値: - :ゴルーチンチャンネル - 私はプリントアウトしようとした送信文の
に評価するだろう、それはエラーメッセージが表示されましたfmt.Println(c <- x)を直前のループのために、以下のコードブロックに「X C <」かを確認します
./select.go:7:ステートメントcを送信< - xは値として使用されます。非ブロック送信用にselectを使用してください。
送信操作が成功した場合、「c <-x」はtrueと評価されますか。なぜ、Goはselect文の中のcase文の中でsend文(別名 "< - x"という値)の値を使用するだけですか?
func fibonacci(c, quit chan int) {
x, y := 1, 1
for {
select {
case c <- x:
x, y = y, x + y
case <-quit:
fmt.Println("quit")
return
}
}
}
は
私のPythonの脳が私のゴーゴールと矛盾し、コールバック(structInstance.method)として "callback"を試してみると、誤って同じことが起こることがあります。 – jdi