当前位置: 首页 > news >正文

新闻聚合网站开发 技术做任务赚佣金一单10块

新闻聚合网站开发 技术,做任务赚佣金一单10块,微信公众号怎么创建优惠券,深圳软件开发招聘信息第四题 左右括号打印 一个协程负责打印“(”,一个协程负责打印“)”,左右括号的数量要匹配。在这道题目里,我在main函数里进行了一个死循环。会产生一个随机数,随机数就是接下来要打印的左括号的数量。 例…

第四题 左右括号打印

一个协程负责打印“(”,一个协程负责打印“)”,左右括号的数量要匹配。在这道题目里,我在main函数里进行了一个死循环。会产生一个随机数,随机数就是接下来要打印的左括号的数量。

例如:((((()))))、(())、()。这样是正确的。一个左括号要匹配一个右括号。数量要对上~

())、((())。一看就左右不平衡,这就是错的!

在这里,我们运用了“空结构体”,这个空结构体是用来“占位置”的。A协程打印了多少个左括号,A协程就要往channel传递多少个空结构体,B协程再根据channel中空结构体的数量,来打印右括号

 

package main
import ("fmt""math/rand""sync""time"
)
func producer(c chan struct{}, times int) {defer close(c)for i := 0; i < times; i++ {fmt.Print("(")c <- struct{}{}}
}
func consumer(c chan struct{}, wg *sync.WaitGroup) {defer wg.Done()for range c {fmt.Print(")")}
}
func main() {rand.Seed(time.Now().UnixNano())for {times := rand.Intn(10) + 1c := make(chan struct{})var wg sync.WaitGroupgo producer(c, times)// 启动多个消费者 goroutinefor i := 0; i < times; i++ {wg.Add(1)go consumer(c, &wg)}wg.Wait()}
}

来看看输出!

5a24b2238ceb4f66841111559fd1743b.png

 

http://www.15wanjia.com/news/36943.html

相关文章:

  • 怎么用php做新闻网站关键词排名批量查询软件
  • wordpress注册怎么优化关键词排名优化
  • 网络工作室营业执照经营范围桌子seo关键词
  • drupal 网站建设鹤壁网站seo
  • html动漫网站模板下载广州seo排名优化服务
  • 网站建设广告优化关键词排名提升
  • 傻瓜式大型网站开发工具qq代刷网站推广免费
  • 聊城商城网站建设seo收费
  • 做淘宝必备的网站网络营销案例分析题
  • 太原推广型网站建设优化系统
  • 公众号中做微网站网络营销培训
  • 做网站 视频如何在百度提交自己的网站
  • 门户网站手机版站长网站统计
  • 上饶网站建设srsem厦门seo外包
  • 平台赚钱seo网站关键词优化费用
  • 做分销的网站管理方面的培训课程
  • 网站开发与设计多少钱一个网站优秀网站网页设计
  • 网站开发背景怎么写搜索优化
  • dede网站地图栏目如何上传文件广告搜索引擎
  • 创建论坛网站怎么做好网站营销推广
  • 做pc端网站多少钱珠海百度seo
  • 个人免费域名空间建站竞价网官网
  • 做赌博网站会被判多久网站制作策划
  • 德清县住房和城乡建设局网站深圳网络营销和推广渠道
  • 各类网站建设站长工具查询
  • 辽宁城乡建设厅网站百度收录网站多久
  • 杭州广告设计公司西安百度快照优化
  • win2003 iis配置网站域名停靠网页app推广大全
  • 郑州哪家公司做网站免费大数据分析网站
  • 网络营销有哪些推广的方法如何做谷歌优化