tgoop.com/go_interview_lib/449
Create:
Last Update:
Last Update:
💬 Что из себя представляет концепция channels of channels?
Это концепция в Go, которая предусматривает использование каналов для передачи других каналов.
В Go каналы являются полноценными значениями, и, следовательно, можно передавать канал в качестве аргумента функции, возвращать канал из функции, а также передавать один канал через другой.
Это позволяет создавать структуры, где управление и координация потоков данных выполняются более динамично и гибко.
📌 Разберем на примере:
package main
import (
"fmt"
)
func main() {
// Создаём канал, который будет передавать каналы
ch := make(chan chan int)
// Горутина, которая получает канал из ch и отправляет данные через него
go func() {
newCh := <-ch
newCh <- 42
}()
// Создаём новый канал для передачи данных
newCh := make(chan int)
// Отправляем новый канал через ch
ch <- newCh
// Получаем данные из newCh
fmt.Println(<-newCh) // Вывод: 42
}
👉 Подробнее
BY Библиотека Go для собеса | вопросы с собеседований
Share with your friend now:
tgoop.com/go_interview_lib/449