2022-07-18:以下go语言代码输出什么?A:Groutine;B:Main;C:Goroutine;D:GoroutineMain。

package main

import (
    "fmt"
    "time"
)

func main() {
    ch := make(chan bool)
    go func() {
        <-ch
        fmt.Print("Goroutine")
    }()
    time.Sleep(2 * time.Second)
    close(ch)
    time.Sleep(3 * time.Second)
    fmt.Print("Main")
}

答案2022-07-18:

答案选D。 close channel 后,<-ch 会立马返回。

在这里插入图片描述