This commit is contained in:
zikwall
2021-02-09 15:30:08 +03:00
parent 64b3081bf6
commit 2ead0c2373

View File

@@ -100,11 +100,10 @@ for num := range joinChannels(a, b, c) {
Для этого напишем функцию, которая будет асинхронно читать из исходных каналов, которые ей передадут в качестве аргументов, и писать в результирующий канал, который вернется из функции.
Создаем канал, куда будем сливать все данные.
- Создаем канал, куда будем сливать все данные.
Он будет небуферезированный, потому что мы не знаем, сколько данных придет из каналов.
Дальше асинхронно прочитаем из исходных каналов и закроем результирующий канал для мерджа, когда все чтение закончится.
Чтобы дождаться конца чтения, просто обернем этот цикл по каналам в wait group.
- Дальше асинхронно прочитаем из исходных каналов и закроем результирующий канал для мерджа, когда все чтение закончится.
- Чтобы дождаться конца чтения, просто обернем этот цикл по каналам в wait group.
```go
package main