<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
Go主執行緒:一個Go執行緒上,可以起多個協程,協程是輕量級的執行緒
package main import ( "fmt" "runtime" "strconv" "time" ) func main() { //編寫一個函數,每隔1s輸出"hello,world" //要求主執行緒和gorutine同時執行 go test() //在主執行緒中,開啟一個goroutine,該協程每隔1s輸出"hello,world" for i:=1;i<=10 ; i++ { fmt.Println("main() hello world", strconv.Itoa(i)) time.Sleep(time.Second) } //查詢Golang執行的cpu數 fmt.Println(runtime.NumCPU()) //4 //設定Golang執行的cpu數 //runtime.GOMAXPROCS(runtime.NumCPU()-1) //3 } func test(){ for i:=1;i<=10 ; i++ { fmt.Println("test() hello world",strconv.Itoa(i)) time.Sleep(time.Second) } }
使用全域性變數加鎖同步改程序式
使用內建函數close可以關閉channel,關閉後,就不能寫入資料,但可讀
程式碼
package main import "fmt" func main() { //定義管道 var intChan chan int intChan =make(chan int,3) //寫入資料 intChan<-10 intChan<-20 intChan<-30 //遍歷 close(intChan) //關閉管道 for value := range intChan { fmt.Printf("%dt",value) //10 20 30 } }
-`channel可以宣告為唯讀,或者只寫性質
package main import "fmt" func main() { numChan := make(chan int, 2000) resChan := make(chan int, 2000) exitChan := make(chan bool, 8) go putNum(numChan) //存放資料 //開啟八個協程 for i := 0; i < 8; i++ { go add(numChan, resChan, exitChan) } go func() { for i:=0;i<8 ;i++ { <-exitChan } close(resChan) }() for i := 1; i <=2000 ; i++ { fmt.Printf("resChan[%d]=%dn", i, <-resChan) } } func putNum(numChan chan int) { for i := 1; i <= 2000; i++ { numChan <- i } close(numChan) } func add(numChan chan int, resChan chan int, exitChan chan bool) { for { n,ok := <-numChan if !ok{ break } res := 0 for i := 1; i <= n; i++ { res += i } resChan <- res } exitChan<-true }
以上就是Go語言Goroutinue和管道效率詳解的詳細內容,更多關於Go Goroutinue 管道效率的資料請關注it145.com其它相關文章!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45