Fermeture de canaux
Contexte
Section intitulée « Contexte »Vous pouvez fermer un canal avec close(ch). Les récepteurs peuvent tester si un canal est fermé en utilisant v, ok := <-ch. Envoyer sur un canal fermé provoque une panique.
Fermer un canal et détecter la fermeture.
Code exemple
Section intitulée « Code exemple »package main
import "fmt"
func main() { ch := make(chan int, 2) ch <- 1 ch <- 2 close(ch)
for i := 0; i < 3; i++ { v, ok := <-ch fmt.Printf("valeur=%d, ok=%t\n", v, ok) }}valeur=1, ok=truevaleur=2, ok=truevaleur=0, ok=false