Back to questions
СБЕР
Junior — Middle
82
Какое максимальное количество элементов можно разместить в канале?
Companies where asked
Answer from AI
sobes.tech AI
В Go максимальное количество элементов в канале зависит от его буфера. Канал может быть буферизированным или небезопасным (без буфера).
- Если канал не буферизирован (создан через
make(chan Type)), он может содержать 0 элементов — отправка блокируется до получения. - Если канал буферизирован (создан через
make(chan Type, N)), максимальное количество элементов равно размеру буфераN.
Теоретически, размер буфера ограничен доступной памятью и типом int (на 64-битных системах это очень большое число). Однако на практике слишком большой буфер неэффективен и может привести к расходу памяти.
Пример создания буферизированного канала на 100 элементов:
ch := make(chan int, 100)