concurrency/generator: refactor generator pattern

This commit is contained in:
mehdy authored and Tamer Tas committed 2016-09-15 11:21:51 +03:00
1 parent d05638adac
commit 89df9f0955
2 files changed
+27 -2

No files matched your search

+24
View File
@@ -0,0 +1,24 @@
package generator
func Range(start int, end int, step int) chan int {
c := make(chan int)
go func() {
result := start
for result < end {
c <- result
result = result + step
}
close(c)
}()
return c
}
func main() {
// print the numbers from 3 through 47 with a step size of 2
for i := range Range(3, 47, 2) {
println(i)
}
}