以下のコードのように、構造体内でスライス chan 型を使用しようとしています。ただし、受信しようとすると
test := <-c.slice
プログラムがハングします。これを行う方法はありますか?
package main
import "fmt"
type blah struct {
slice chan [][]int
}
func main() {
slice := make([][]int, 3)
c := blah{make(chan [][]int)}
slice[0] = []int{1, 2, 3}
slice[1] = []int{4, 5, 6}
slice[2] = []int{7, 8, 9}
go func() {
test := <- c.slice
test = slice
c.slice <- test
}()
fmt.Println(<-c.slice)
}