1. 首页
  2. 文章

go语法:channel作为参数的传递

x369201170 ·

在声明channel对象的参数时,一定要写成 c chan xxx,xxx代表channel的类型。例如

package main
import (
	"fmt"
	//"time"
)
func main() {
	c := make(chan bool, 1)
		for i := 0; i < 10; i++ {
		go Go(c, i)
	}
	<-c
}
func Go(c chan bool, index int) {
	sum := 0
	for i := 0; i < 1000000; i++ {
		sum += i
	}
	fmt.Println(sum)
	c <- true
}

这里的chan C变量是bool类型,所以需要在声明方法的参数时,也要加上这个bool类型。

这点跟java有所不同,刚开始看一直没搞懂,

本文来自:CSDN博客

感谢作者:x369201170

查看原文:go语法:channel作为参数的传递

请问 chanel 当做参数在函数之间传递时,有没有必要使用地址传递
#1

用户登录

没有账号?注册

今日阅读排行

    加载中

一周阅读排行

    加载中