如何从 Go 通道获取(和忽略)一个值

How to get (and ignore) a value from Go channel

我在 select 语句中有以下代码。 finishbool 类型。事实上,我什至不在乎价值,只要我收到任何东西。然而,Go 给我一个未使用的变量错误。我该如何解决?

case finish := <- termSig:

我目前的解决方法是 Println(finish)

我试过:-

case _ := <- termSig:

但这也不管用。

只需省略变量和 :=:

case <-termSig:

Go Tour 所示,当 select 被引入时,您可以有一个不初始化新变量的情况。

func fibonacci(c, quit chan int) {
    x, y := 0, 1
    for {
        select {
        case c <- x:
            x, y = y, x+y
        case <-quit:  // looks like exactly your use case
            fmt.Println("quit")
            return
        }
    }
}