Go でチャネルを学習するための簡単なプログラムを作成しようとしています。しかし、私は理解できないデッドロックエラーに遭遇しています
package main
import (
"fmt"
"time"
)
func printer(c chan int) {
for i := 0; i < 10; i++ {
c <- i
time.Sleep(time.Second)
}
}
func reciever(c chan int) {
for {
recievedMsg := <-c
fmt.Println(recievedMsg)
}
}
func main() {
newChanel := make(chan int)
printer(newChanel)
reciever(newChanel)
}
私の最初の考えはスリープ機能に関するものでしたが、これを含めなくても、このエラーに遭遇して終了メッセージが表示されます。誰かがこれを解決する方法についていくつかのヒントを与えることができますか?
前もって感謝します