您的位置:首页 > 新闻 > 资讯 > 十大房地产公司排行榜_多语言外贸企业网站源码_营销推广网站推广方案_线上销售怎么做

十大房地产公司排行榜_多语言外贸企业网站源码_营销推广网站推广方案_线上销售怎么做

2025/1/14 18:27:59 来源:https://blog.csdn.net/qq_39728668/article/details/145122809  浏览:    关键词:十大房地产公司排行榜_多语言外贸企业网站源码_营销推广网站推广方案_线上销售怎么做
十大房地产公司排行榜_多语言外贸企业网站源码_营销推广网站推广方案_线上销售怎么做

《零基础Go语言算法实战》

【题目 2-26】goroutine 的执行效率问题

请说出下面的代码存在什么问题。

package main

import "fmt"

type Func func(string) string

func exec(name string, vs ...Func) string {

 ch := make(chan string)

 fn := func(i int) {

 ch <- vs[i](name)

 }

 for i, _ := range vs {

 go fn(i)

 }

 return <-ch

}

func main() {

 ret := exec("test", func(n string) string {

 return n + "func1"

 }, func(n string) string {

 return n + "func2"

 }, func(n string) string {

 return n + "func3"

 }, func(n string) string {

 return n + "func4"

 })

 fmt.Println(ret)

}

【解答】

依据 4 个 goroutine 的启动后执行效率,很可能输出 testfunc4,但其他的 testfunc1 也可能

先执行,exec() 函数只会返回一条信息。

bebe7e141ed84ec6a70afee25a972cca.png

 

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com