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

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

為什么函數(shù)會提前返回?

為什么函數(shù)會提前返回?

Go
慕的地6264312 2021-05-14 14:15:26
我剛剛開始學習go,并且一直在完成巡回演出。最后一個練習是編輯Web爬網(wǎng)程序以并行爬網(wǎng),而無需重復。這是練習的鏈接:http : //tour.golang.org/#70這是代碼。我只更改了爬網(wǎng)和主要功能。因此,我將發(fā)布這些內(nèi)容以使其保持整潔。 // Crawl uses fetcher to recursively crawl    // pages starting with url, to a maximum of depth.    var used = make(map[string]bool)    var urlchan = make(chan string)    func Crawl(url string, depth int, fetcher Fetcher) {        // TODO: Fetch URLs in parallel.        // Done: Don't fetch the same URL twice.        // This implementation doesn't do either:        done := make(chan bool)        if depth <= 0 {            return        }        body, urls, err := fetcher.Fetch(url)        if err != nil {            fmt.Println(err)            return        }        fmt.Printf("\nfound: %s %q\n\n", url, body)        go func() {            for _, i := range urls {                urlchan <- i            }            done <- true        }()        for u := range urlchan {            if used[u] == false {                used[u] = true                go Crawl(u, depth-1, fetcher)            }            if <-done == true {                break            }        }        return    }    func main() {        used["http://golang.org/"] = true        Crawl("http://golang.org/", 4, fetcher)    }問題是,當我運行程序時,爬網(wǎng)程序在打印后停止    not found: http://golang.org/cmd/僅當我嘗試使程序并行運行時,才會發(fā)生這種情況。如果我讓它線性運行,那么所有網(wǎng)址都可以正確找到。注意:如果我沒有正確執(zhí)行此操作(我的意思是并行),則表示歉意。
查看完整描述

1 回答

  • 1 回答
  • 0 關(guān)注
  • 219 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

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