package main
import (
"fmt"
"strconv"
"time"
)
func main() {
in := make (chan
int
)
out := make(chan string, 10)
tasks := []
int
{1, 2, 3 , 4, 5, 6, 7, 8, 9, 10}
go worker(in, out)
for
_, v := range tasks {
in <- v
}
close(in)
receiver(out)
time
.Sleep(
time
.Second * 1)
}
func receiver(out chan string) {
for
ret := range out {
fmt.Println(ret)
}
}
func worker(in chan
int
, out chan string) {
for
res := range in{
ret :=
"返回结果:"
ret += strconv.Itoa(res)
out <- ret
time
.Sleep(
time
.Millisecond * 50)
}
close(out)
}