Sobes.tech
Junior — Middle
118

Егер бұрын жабылған арнаны жабуға тырыссаңыз, қандай мінез-құлық күтіледі?

Сұралған компаниялар
КасперскийКасперский

AI-дан жауап

sobes.tech AI

В Go попытка закрыть уже закрытый канал приводит к панике (panic).

Закрывать канал можно только один раз, чтобы сигнализировать о том, что больше не будет отправлено значений.

Если вызвать close(ch) повторно для одного и того же канала, программа аварийно завершится с ошибкой.

Пример:

ch := make(chan int)
close(ch)       // корректно
close(ch)       // panic: close of closed channel

Поэтому важно контролировать, что канал закрывается только один раз.