在Go語言中,通道(channel)是一種用于在不同goroutine之間傳遞數據的同步機制。要創建一個通道,你可以使用make
函數,或者使用匿名函數和chan
關鍵字。以下是兩種創建通道的方法:
make
函數創建通道:package main
import "fmt"
func main() {
// 創建一個整數類型的通道
ch := make(chan int)
// 發送數據到通道
ch <- 42
// 從通道接收數據
value := <-ch
fmt.Println("Received:", value)
}
chan
關鍵字創建通道:package main
import "fmt"
func main() {
// 創建一個整數類型的通道
ch := chan int{}
// 發送數據到通道
ch <- 42
// 從通道接收數據
value := <-ch
fmt.Println("Received:", value)
}
在這兩個示例中,我們創建了一個整數類型的通道ch
,然后向其中發送了一個值42
,并從通道中接收了這個值。注意,通道是阻塞的,所以在發送和接收操作完成之前,程序會等待。