Skip to content

Latest commit

 

History

History
21 lines (19 loc) · 479 Bytes

File metadata and controls

21 lines (19 loc) · 479 Bytes

Пример функции-генератора на Go, которая возвращает канал, через который передаются значения:

func genOneThruThree() chan int {
    c := make(chan int)
    go func() {
        for i := 1; i <= 3; i++ {
            c <- i
        }
        close(c)
    }()
    return c
}

func main() {
    generator := genOneThruThree()
    for value := range generator {
        fmt.Println(value)
    }
}