day10协程
parent
e31d5c975f
commit
c8e8947414
|
@ -0,0 +1,25 @@
|
||||||
|
package main
|
||||||
|
|
||||||
|
import "runtime"
|
||||||
|
|
||||||
|
func main() {
|
||||||
|
// chan是channel的缩写,channel是一种特殊的类型
|
||||||
|
// chan是一个关键字
|
||||||
|
// chan和map , slice一样,是引用类型,
|
||||||
|
// 参数传递时,传递的是地址
|
||||||
|
// chan的零值是nil
|
||||||
|
// 两个相同类型的channel可以用==比较,
|
||||||
|
// 如果当他们引用的是同一个channel对象,或者都是nil,那么结果为true
|
||||||
|
ch := make(chan int)
|
||||||
|
ch <- 2
|
||||||
|
go forEach(ch)
|
||||||
|
runtime.GOMAXPROCS(8)
|
||||||
|
forEach(nil)
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
func forEach(ch chan int) {
|
||||||
|
for {
|
||||||
|
println(<-ch)
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue