Назад к задачамПолучайте помощь с лайвкодингом в реальном времени с Sobes Copilot
Junior
9
Merge каналов в один
Условие задачи
Реализовать функцию merge, которая принимает произвольное количество каналов chan string и возвращает один выходной канал, из которого можно читать все значения из переданных каналов. Переданные каналы вне функции merge закрываются после записи. Функция должна завершить работу корректно и закрыть выходной канал, когда все входные каналы закрыты. После завершения чтения из объединённого канала программа должна вывести "ok".
func main() {
for item := range merge(...) {
// ...
}
fmt.Println("ok")
}
func merge(chs ...chan string) chan string {
// пиши тут
}