| 123456789101112131415161718192021222324252627282930313233343536373839404142 |
- package main
- import "fmt"
- func main() {
- letter := make(chan struct{})
- number := make(chan struct{})
- go func() {
- for i := 0; i < 26; i++ {
- <-number
- fmt.Printf("%c ", 'A'+i)
- letter <- struct{}{}
- }
- }()
- go func() {
- for i := 0; i < 26; i++ {
- <-letter
- fmt.Printf("%d ", i)
- number <- struct{}{}
- }
- }()
- number <- struct{}{}
- <-letter
- }
- //package main
- //
- //import "fmt"
- //
- //func main() {
- // ch := make(chan string) // 1. 造一根管道
- //
- // go func() { // 2. 启动一个工人(goroutine)
- // ch <- "hello from another goroutine" // 放进管道
- // }()
- //
- // msg := <-ch // 3. 主工人从管道拿数据
- // fmt.Println(msg)
- //}
|