Golang 中的 channel 是什么?如何使用?

在 Go 语言中,channel 是一种用于在不同 goroutine 之间传递数据的数据类型。一个 channel 类似于一个管道,可以通过它将数据从一个 goroutine 传递到另一个 goroutine。

可以通过 make 函数创建一个 channel,例如:

ch := make(chan int)

可以使用 <- 操作符向 channel 中发送数据,例如:

ch <- 1 // 向 channel 中发送整数 1

也可以使用 <- 操作符从 channel 中接收数据,例如:

x := <- ch // 从 channel 中接收数据并存储到变量 x 中