中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Go語言通道怎么聲明

發布時間:2022-12-16 17:31:28 來源:億速云 閱讀:101 作者:iii 欄目:編程語言

這篇“Go語言通道怎么聲明”文章的知識點大部分人都不太理解,所以小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“Go語言通道怎么聲明”文章吧。

通道

在go語言中,并發中傳遞數據是通過通道進行數據傳遞,通道可用于兩個 goroutine 之間通過傳遞一個指定類型的值來同步運行和通訊。操作符 <- 用于指定通道的方向,發送或接收。如果未指定方向,則為雙向通道。

ch <- v    // 把 v 發送到通道 ch     v := <-ch  // 從 ch 接收數據                // 并把值賦給 v

*  聲明一個通道很簡單,我們使用chan關鍵字即可,通道在使用前必須先創建:    

ch := make(chan int)

代碼示例

package main

import "fmt"

func sum(s []int, c chan int) {
        sum := 0
        for _, v := range s {
                sum += v
        }
        c <- sum // 把 sum 發送到通道 c
}

func main() {
        s := []int{7, 2, 8, -9, 4, 0}

        c := make(chan int)
        go sum(s[:len(s)/2], c)
        go sum(s[len(s)/2:], c)
        x, y := <-c, <-c // 從通道 c 中接收

        fmt.Println(x, y, x+y)
}

/*************************************************
輸出結果
-5 17 12
*************************************************/

以上就是關于“Go語言通道怎么聲明”這篇文章的內容,相信大家都有了一定的了解,希望小編分享的內容對大家有幫助,若想了解更多相關的知識內容,請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

兰州市| 上高县| 镇宁| 双鸭山市| 江津市| 怀化市| 汪清县| 东方市| 常宁市| 铜梁县| 阿克陶县| 莒南县| 甘孜县| 秦皇岛市| 沂源县| 确山县| 扶沟县| 蓬莱市| 宣城市| 江阴市| 启东市| 四子王旗| 绍兴县| 深州市| 云林县| 英吉沙县| 云龙县| 修武县| 讷河市| 晋宁县| 汝城县| 大城县| 忻城县| 榆树市| 灵宝市| 武邑县| 龙南县| 凤庆县| 隆尧县| 甘孜县| 民勤县|