1、未使用go channel
十載的順河網站建設經驗,針對設計、前端、開發、售后、文案、推廣等六對一服務,響應快,48小時及時工作處理。成都營銷網站建設的優勢是能夠根據用戶設備顯示端的尺寸不同,自動調整順河建站的顯示方式,使網站能夠適用不同顯示終端,在瀏覽器中調整網站的寬度,無論在任何一種瀏覽器上瀏覽網站,都能展現優雅布局與設計,從而大程度地提升瀏覽體驗。創新互聯從事“順河網站設計”,“順河網站推廣”以來,每個客戶項目都認真落實執行。
package?main import?( ????"fmt" ????"time" ) func?printer(s?string)?{ ????for?_,?v?:=?range?s?{ ????????fmt.Println(string(v)) ????????time.Sleep(time.Millisecond?*?3000) ????} } func?person()?{ ????printer("hello") } func?person2()?{ ????printer("world") } func?main()?{ ????go?person() ????go?person2() ????for?{ ????} }
d:\goprojects\src\day1\練習>go?run?main.go h w e o l r l l o d exit?status?2
2、使用channel
package?main import?( ????"fmt" ????"time" ) var?ch?=?make(chan?int,?1) func?printer(s?string)?{ ????for?_,?v?:=?range?s?{ ????????fmt.Println(string(v)) ????????time.Sleep(time.Millisecond?*?3000) ????} } func?person()?{ ????printer("hello") ????ch?<-?1 } func?person2()?{ ????<-ch ????printer("world") } func?main()?{ ????go?person() ????go?person2() ????for?{ ????} }
d:\goprojects\src\day1\練習>go?run?main.go h e l l o w o r l d
3、小結
channel?有兩端,一端寫入(數據傳入)ch<-?;一端讀出(傳出數據);要求讀寫兩端必須同時滿足條件,才能在channel上完成數據流動,否則阻塞。
4、 關閉channel
package?main import?"fmt" func?main()?{ ????ch?:=?make(chan?int) ????go?func()?{ ????????for?i?:=?0;?i?<?8;?i++?{ ????????????ch?<-?i ????????} ????????close(ch) ????}() ????for?{ ????????if?num,?ok?:=?<-ch;?ok?{ ????????????fmt.Println(num) ????????}?else?{ ????????????fmt.Println("channel?close") ????????????break ????????} ????} }
d:\goprojects\src\day1\并發\exp1>go?run?main.go 0 1 2 3 4 5 6 7 channel?close d:\goprojects\src\day1\并發\exp1>
分享標題:gochannel理解
標題來源:http://m.newbst.com/article0/gcigoo.html
成都網站建設公司_創新互聯,為您提供網站制作、小程序開發、品牌網站制作、靜態網站、自適應網站、App設計
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯