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

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在這種情況下沒有出現恐慌

在這種情況下沒有出現恐慌

Go
POPMUISE 2021-04-08 18:15:54
我驚慌失措func main() {    ch := make(chan int)    ch <- 1    fmt.Println(<-ch)}fatal error: all goroutines are asleep - deadlock!goroutine 1 [chan send]:main.main()    /tmp/sandbox058504389/main.go:10 +0x60我相信,go會檢測到主例程在寫入時被阻塞,并且由于在寫入非緩沖通道時發生了阻塞,因此永遠不會到達讀取代碼段,并且我們會感到恐慌。為什么我們在下面的代碼中看不到問題,為什么不慌張func main() {    fmt.Println("Hello, playground")    var wg sync.WaitGroup    ch := make(chan int)    wg.Add(1)    go func() {        <-ch         wg.Done()    }()    wg.Wait()}鑒于在工作片段中,如果我將<-ch通道read更改為ch<-,即寫操作,則確實會看到錯誤。有人可以解釋我為什么嗎?
查看完整描述

1 回答

  • 1 回答
  • 0 關注
  • 252 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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