Back to questions
МВидео
Middle+
3
What pipeline?
Companies where asked
Answer from AI
sobes.tech AI
Пайплайн (pipeline) — это последовательность шагов обработки данных или задач, где выход одного шага служит входом для следующего. В программировании и системах обработки данных пайплайны помогают структурировать сложные процессы и обеспечивают поток данных.
В Go часто используют паттерн pipeline для организации конвейера обработки с помощью горутин и каналов. Например, данные проходят через несколько этапов обработки параллельно, что повышает производительность и читаемость кода.
Пример простого pipeline на Go:
func gen(nums ...int) <-chan int {
out := make(chan int)
go func() {
for _, n := range nums {
out <- n
}
close(out)
}()
return out
}
func sq(in <-chan int) <-chan int {
out := make(chan int)
go func() {
for n := range in {
out <- n * n
}
close(out)
}()
return out
}
func main() {
c := gen(2, 3, 4)
out := sq(c)
for n := range out {
fmt.Println(n)
}
}
Здесь данные проходят через два этапа: генерация чисел и возведение в квадрат.