第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

golang:select 語句中的通道有時(shí)只接收(???)

golang:select 語句中的通道有時(shí)只接收(???)

Go
幕布斯7119047 2021-09-10 21:33:02
我在從兩個(gè)通道接收的 go 例程中有一個(gè) select 語句。for {    fmt.Printf("Waiting for select statement ...\n")    select {    case req := <-requestChan:        fmt.Printf("I got a request: %v\n", req)    case <-doneChan:        fmt.Printf("serveDatabase: Got closing signal. Stop serving.\n")        return    }}如果調(diào)用函數(shù)發(fā)送到第一個(gè)通道兩次,然后發(fā)送到第二個(gè)通道,一切正常:requestChan <- Db_request{ request: "Login", beehive: "yaylaswiese" }requestChan <- Db_request{ request: "Signup", beehive: "aziz nezir" }fmt.Printf("Sending true to the doneChannel\n")doneChan <- true控制臺(tái)輸出(正確)是:>     Waiting for select statement ...>     I got a request: {Login yaylaswiese}>     Waiting for select statement ...>     Sending true to the doneChannel>     I got a request: {Signup aziz nezir}>     Waiting for select statement ...>     serveDatabase: Got closing signal. Stop serving.但是,如果我評(píng)論第二個(gè)請(qǐng)求,例如requestChan <- Db_request{ request: "Login", beehive: "yaylaswiese" }// requestChan <- Db_request{ request: "Signup", beehive: "aziz nezir" }fmt.Printf("Sending true to the doneChannel\n")doneChan <- true然后輸出是>     Waiting for select statement ...>     I got a request: {Login yaylaswiese}>     Waiting for select statement ...>     Sending true to the doneChannel所以doneChan 永遠(yuǎn)不會(huì)收到。我也嘗試在發(fā)送 doneChan 后進(jìn)入無限循環(huán),但結(jié)果相同。那可能是什么?
查看完整描述

1 回答

?
慕無忌1623718

TA貢獻(xiàn)1744條經(jīng)驗(yàn) 獲得超4個(gè)贊

最有可能的main是,您在另一個(gè) goroutine 完成之前就退出了。請(qǐng)注意,它們是并發(fā)的,一旦main完成,所有其他 goroutine 都會(huì)被殺死。

您需要顯式地將 goroutine 的結(jié)尾與main您可以使用 sync.WaitGroup或其他頻道。


查看完整回答
反對(duì) 回復(fù) 2021-09-10
  • 1 回答
  • 0 關(guān)注
  • 230 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)