go語法:channel作爲參數的傳遞

在聲明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有所不同,剛開始看一直沒搞懂,

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章