Back to questions
Junior — Middle
85
Что произойдет, если попытаться прочитать данные из канала, который еще не был инициализирован?
Answer from AI
sobes.tech AI
Если попытаться прочитать данные из канала в Go, который не был инициализирован (то есть равен nil), то операция чтения заблокируется навсегда. Это приведет к тому, что горутина, пытающаяся читать из такого канала, зависнет, так как канал не существует и не может передавать данные.
Пример:
var ch chan int // ch равен nil
func main() {
fmt.Println(<-ch) // блокируется навсегда
}
Чтобы избежать этого, канал нужно инициализировать с помощью make, например: ch := make(chan int).