中級 › all goroutines are asleep - deadlock! の原因と直し方 › パターン4
all goroutines are asleep - deadlock! の原因と直し方
バッファなしチャネルへの送信は、受信するgoroutineが存在するまでブロックします。
1 package main 2 3 func main() { 4 ch := make(chan int) 5 ________________________ ^ 6 <-ch 7 }
fatal error: all goroutines are asleep - deadlock!
空欄を埋めて実行を通す
送信も受信もされないままメインgoroutineが止まると、他に動けるgoroutineが無いためランタイムがデッドロックと判断します。
次の問題