亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

Go并發之魂:Goroutine深入淺出【程序人生中的“米其林三星級”并發實戰】

凰凰 架構師
難度初級
時長 1小時58分
學習人數
綜合評分8.33
8人評價 查看評價
8.5 內容實用
8.5 簡潔易懂
8.0 邏輯清晰
“select外面不用加for吧,break根本跳不出去的”
可以用 goto 跳轉到指定位置 就可以跳出去了
出課啊大佬
把我給聽餓了- -||
select外面不用加for吧,break根本跳不出去的
不錯,越到后面越好
老師的代碼有錯誤的地方

func A() {
...
go func(task []int, i int) {
...
}(task, i) // i 需要從外部傳進去
}

func B 和 func C 中 break 無法跳出循環,可以使用 goto 或者 標記flag 跳出外層 for 循環
@我魔我能,同學,你還是往后看一下第三章的內容。。。。。人家舉的例子是一個籠蒸10個包子代表一個協程處理一個任務。。。。。10個包子=1個任務,不是10個任務。。。。你理解錯了
舉例不當,一個包子出籠需要,做包子,包子放入蒸籠,出籠給客戶,這三步才能完成。這時來個客戶要買10個包子,單協程是這樣做的:做1包子1分鐘,把1個包子放入蒸籠,蒸10分鐘,出籠給客戶,然后繼續做第二個,第三個,這樣客戶就要等待110分鐘。而多協程是這樣的:把做包子比做一個任務,那現在有10個任務,第一個任務開始:做1包子,把1個包子放入蒸籠,等待蒸好,這時第一個任務陷入等待,廚師可以去做第二個任務,做第2個包子,把第二個包子放入蒸籠,等待第二個蒸好,好第二個任務又陷入等待了。廚師開始做第3個任務,。。。這樣客戶的等待時間就是蒸一個包子的時間+做10個包子的時間——1*10+10=20分鐘
課程的PPT的還做的不錯,至于講的嘛,就~。如果你只是來學一下go語言的協程語法,那么你會有收獲;如果你初學者想了解一下go協程,那么很有可能會誤導你。
課程中例子選的不錯,但講法錯了。單協程就是一個籠子每次蒸1個包子,多協程就是1個籠子一次蒸10個???協程序是提供了程序的并發能力,不是并行能力!協程本質是讓程序員用同步、阻塞的編碼,利用go的協程調度,提高cpu利用率,實現一個高并發服務。
期待老師的實戰課程!
通俗易懂。 看完goruntinue原理再看這個 很容易理解
課程須知
1、學前掌握基本的Go語法基礎
老師告訴你能學到什么?
1. multi-goroutine核心機理、使用場景、局限性、如何管理 2. 協程生命周期、多并發通用設計+實戰 3. channel使用、資源爭搶 4. channel阻塞:概念+觸發條件+實際開發場景+避免方法 5. goroutine高頻面試題+面試思路點撥 6. 如何白板寫goroutine并發面試代碼與注意事項

微信掃碼,參與3人拼團

微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

友情提示:

您好,此課程屬于遷移課程,您已購買該課程,無需重復購買,感謝您對慕課網的支持!

本次提問將花費2個積分

你的積分不足,無法發表

為什么扣積分?

本次提問將花費2個積分

繼續發表請點擊 "確定"

為什么扣積分?

舉報

0/150
提交
取消