package mainimport (fmtsync)var wg sync.WaitGroupfunc letter(ch chan string) {defer wg.Done()for i:=0; i26; i++{ch - fmt.Sprintf(%c, A+i)}close(ch)}func number(ch chan int) {defer wg.Done(...

package main import ( "fmt" "sync" ) var wg sync.WaitGroup func letter(ch chan string) { defer wg.Done() for i:=0; i<26; i++{ ch <- fmt.Sprintf("%c", 'A'+i) } close(ch) } func number(ch chan int) { defer wg.Done() for i:=1; i<29; i++{ ch <- i } close(ch) } func main() { leChar := make(chan string, 26) intChar := make(chan int, 28) wg.Add(3) go letter(leChar) go number(intChar) go func() { defer wg.Done() for i := range intChar{ fmt.Printf("%d%d%s%s",i,<-intChar, <-leChar, <-leChar) } }() wg.Wait() }
? ?
织梦狗教程
本文标题为:go 实现两个goroutine交替执行打印数字和字母


基础教程推荐
猜你喜欢
- R语言绘制折线图实例分析 2022-11-21
- Ruby3多线程并行Ractor使用方法详解 2023-07-23
- R语言 ggplot2改变柱状图的顺序操作 2022-11-17
- ruby-on-rails-为使用Rails 4,nginx和乘客的用户设置自定义域 2023-09-21
- Swift初始化器与可选链的使用方法介绍 2023-07-08
- win10下使用virtualbox + vagrant配置ruby开发机环境 2023-07-23
- 浅析ELF转二进制允许把 Binary 文件加载到任意位置 2023-07-06
- ruby on rails validates 2023-09-22
- Swift中重写和重载的使用与对比总结 2023-07-05
- R语言-修改(替换)因子变量的元素操作 2022-11-26