原文:http://blog.csdn.net/deus_ex_machina/article/details/57074583
package main
import (
"fmt"
"time"
)
func Product(ch chan<- int) {
for i := 0; i < 100; i++ {
fmt.Println("Product:", i)
ch <- i
}
}
func Consumer(ch <-chan int) {
for i := 0; i < 100; i++ {
a := <-ch
fmt.Println("Consmuer:", a)
}
}
func main() {
ch := make(chan int, 1)
go Product(ch)
go Consumer(ch)
time.Sleep(50)
}
运行:
go run product_consumer.go
结果:
Product: 0Product: 1
Product: 2
Consmuer: 0
Consmuer: 1
Consmuer: 2
Product: 3
Product: 4
Product: 5
Consmuer: 3
Consmuer: 4
Consmuer: 5
Product: 6
Product: 7
Product: 8
Consmuer: 6
Consmuer: 7
Consmuer: 8
Product: 9
Product: 10
Product: 11
Consmuer: 9
Consmuer: 10
Consmuer: 11
Product: 12
Product: 13
Product: 14
Consmuer: 12
Consmuer: 13
Consmuer: 14
Product: 15
Product: 16
Product: 17
Consmuer: 15
Consmuer: 16
Consmuer: 17
Product: 18
Product: 19
Product: 20
Consmuer: 18
Consmuer: 19
Consmuer: 20
Product: 21
Product: 22
Product: 23
Consmuer: 21
Consmuer: 22
Consmuer: 23
Product: 24
Product: 25
Product: 26
Consmuer: 24
Consmuer: 25
Consmuer: 26
Product: 27
Product: 28
Product: 29
Consmuer: 27
Consmuer: 28
Consmuer: 29
Product: 30
Product: 31
Product: 32
Consmuer: 30
Consmuer: 31
Consmuer: 32
Product: 33
Product: 34
Product: 35
Consmuer: 33
Consmuer: 34
Consmuer: 35
Product: 36
Product: 37
Product: 38
Consmuer: 36
Consmuer: 37
Consmuer: 38
Product: 39
Product: 40
Product: 41
Consmuer: 39
Consmuer: 40
Consmuer: 41
Product: 42
Product: 43
Product: 44
Consmuer: 42
Consmuer: 43
Consmuer: 44
Product: 45
Product: 46
Product: 47
Consmuer: 45
Consmuer: 46
Consmuer: 47
Product: 48
Product: 49
Product: 50
Consmuer: 48
Consmuer: 49
Consmuer: 50
Product: 51
Product: 52
Product: 53
Consmuer: 51
Consmuer: 52
Consmuer: 53
Product: 54
Product: 55
Product: 56
Consmuer: 54
Consmuer: 55
Consmuer: 56
Product: 57
Product: 58
Product: 59
Consmuer: 57
Consmuer: 58
Consmuer: 59
Product: 60
Product: 61
Product: 62
Consmuer: 60
Consmuer: 61
Consmuer: 62
Product: 63
Product: 64
Product: 65
Consmuer: 63
Consmuer: 64
Consmuer: 65
Product: 66
Product: 67
Product: 68
Consmuer: 66
Consmuer: 67
Consmuer: 68
Product: 69
Product: 70
Product: 71
Consmuer: 69
Consmuer: 70
Consmuer: 71
Product: 72
Product: 73
Product: 74
Consmuer: 72
Consmuer: 73
Consmuer: 74
Product: 75
Product: 76
Product: 77
Consmuer: 75
Consmuer: 76
Consmuer: 77
Product: 78
Product: 79
Product: 80
Consmuer: 78
Consmuer: 79
Consmuer: 80
Product: 81
Product: 82
Product: 83
Consmuer: 81
Consmuer: 82
Consmuer: 83
Product: 84
Product: 85
Product: 86
Consmuer: 84
Consmuer: 85
Consmuer: 86
Product: 87
Product: 88
Product: 89
Consmuer: 87
Consmuer: 88
Consmuer: 89
Product: 90
Product: 91
Product: 92
Consmuer: 90
Consmuer: 91
Consmuer: 92
Product: 93
Product: 94
Product: 95
Consmuer: 93
Consmuer: 94
Consmuer: 95
Product: 96
Product: 97
Product: 98
Consmuer: 96
Consmuer: 97
Consmuer: 98
Product: 99
Consmuer: 99