go的一些写法总结

版权声明:微信公众号 java架构狮 欢迎转载 请注明出处 https://blog.csdn.net/AlbertFly/article/details/89674610

1 以下两种基本等价

func main() {
	c := make(chan bool, 100)
	for i := 0; i < 100; i++ {
		go func(i int) {
			fmt.Println(i)
			c <- true
		}(i)
	}
	for i := 0; i < 100; i++ {
		 b :=<-c
		fmt.Println(b)
	}

}

等价于

func main() {
	c := make(chan bool, 100)
	for i := 0; i < 100; i++ {
		go func(i int) {
			fmt.Println(i)
			c <- true
		}(i)
	}
	for i := 0; i < 100; i++ {
		<- c
		// b :=<-c
		//fmt.Println(b)
	}

}

猜你喜欢

转载自blog.csdn.net/AlbertFly/article/details/89674610