go语言channel实现多核并行化运行的方法
程序员文章站
2022-05-26 09:41:48
本文实例讲述了go语言channel实现多核并行化运行的方法。分享给大家供大家参考。具体如下:
这里定义一个add函数,用于返回两个整数的和,使用go 语句进行并行化运算...
本文实例讲述了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语言程序设计有所帮助。