go语言channel实现多核并行化运行的方法
更新时间:2015年03月02日 09:18:01 作者:两把刷子
这篇文章主要介绍了go语言channel实现多核并行化运行的方法,实例分析了channel实现多核并行化运行的技巧,具有一定参考借鉴价值,需要的朋友可以参考下
本文实例讲述了go语言channel实现多核并行化运行的方法。分享给大家供大家参考。具体如下:
这里定义一个Add函数,用于返回两个整数的和,使用go 语句进行并行化运算,为了等待各个并行运算结束获得其返回值,需要引入channel
复制代码 代码如下:
package main
import "fmt"
func Add(x int,y int,channel chan int) {
sum := library.Add(x,y)
fmt.Println(sum)
channel <- 1
}
func main() {
n:=10
channel := make(chan int ,n)
for i:=0;i<n;i++{
go Add(1,i,channel)
}
for i:=0;i<n;i++{
<- channel
}
}
import "fmt"
func Add(x int,y int,channel chan int) {
sum := library.Add(x,y)
fmt.Println(sum)
channel <- 1
}
func main() {
n:=10
channel := make(chan int ,n)
for i:=0;i<n;i++{
go Add(1,i,channel)
}
for i:=0;i<n;i++{
<- channel
}
}
最后输出:
1
2
3
4
5
6
7
8
9
10
希望本文所述对大家的Go语言程序设计有所帮助。
您可能感兴趣的文章:
相关文章
go语言Pflag Viper Cobra 核心功能使用介绍
这篇文章主要为大家介绍了go语言Pflag Viper Cobra 核心功能使用介绍,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2022-09-09
go 原生http web 服务跨域restful api的写法介绍
这篇文章主要介绍了go 原生http web 服务跨域restful api的写法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2021-04-04


最新评论