package main
import "fmt"
func main() {
ch := make(chan int, 1)
ch <- 1
fmt.Println("ch中的值为", <-ch)
}
package main
import "fmt"
func main() {
ch := make(chan int)
ch <- 1
fmt.Println("ch中的值为", <-ch)
}
缓冲区为 1 能正常输出 1
而无缓冲区会死锁,因为在往 channel 置入值,当前 goroutine 就会被挂起,消费者无法接收 channel 传入的值
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。