初级会员
  • 第 39303 位会员
  • qiqi3570
  • 2019-06-24 21:05:18
  • Offline
  • 19 44

最近发布的文章

    暂无

最近分享的资源

    暂无

最近发布的项目

    暂无

最近的评论

  • 个人理解,当协程数量与cpu核心数量一致时,效率为最高。 因其在运行时,cpu使用率已达100%,再加协程会并发执行,不会有明显的速度提升
  • ```go package main import ( "fmt" ) func InitNum(ch chan int) { for i := 1; i <= 2000; i++ { ch <- i } close(ch) } func readNum(ch chan int, reschan chan map[int]int, remap chan bool) { for { temp, ok := <-ch if !ok { break } else { res := 0 remp1 := make(map[int]int) for i := 1; i <= temp; i++ { res = res + i } remp1[temp] = res reschan <- remp1 } } remap <-true } func main() { ch := make(chan int, 2000) reschan := make(chan map[int]int, 2000) remap := make(chan bool, 8) for i := 0; i < 8; i++ { go readNum(ch, reschan, remap) } go InitNum(ch) go func(){ for i := 0; i < 8; i++ { <-remap } close(reschan) } for{ temp,ok:=<-reschan if !ok{ break } fmt.Println(temp) } } ```