Назад к вопросам
Junior — Middle
83
Можно ли создать канал без указания его размера в процессе инициализации?
Ответ от нейросети
sobes.tech AI
Да, в Go можно создать канал без указания его размера — это будет небуферизированный канал. Такой канал блокирует отправителя до тех пор, пока получатель не прочитает значение, и наоборот. Пример создания небуферизированного канала:
ch := make(chan int) // канал без буфера
Если нужно создать буферизированный канал с определённым размером, то указывается второй параметр:
ch := make(chan int, 10) // канал с буфером на 10 элементов
Таким образом, размер канала по умолчанию равен нулю, и он работает как синхронизирующий механизм между горутинами.