编辑代码

package main

import "log"

func fibonacci(c, quit chan int) {
	x, y := 0, 1
	for {
		select {
		case c <- x:
			x, y = y, x+y
		case <-quit:
			log.Println("quit")
			return
		}
	}
}

func main() {
	c := make(chan int)
	quit := make(chan int)
	go fibonacci(c, quit)
	for x := 0; x < 10; x++ {
		log.Println(<-c)

	}
	quit <- 0
}