Junior — Middle
Comment peut-on gérer la taille du tampon dans un canal?
sobes.tech IA
Réponse de l'IA
En Go, la taille du tampon du canal est définie lors de sa création avec la fonction make. Si vous indiquez le deuxième paramètre, ce sera la taille du tampon, c'est-à-dire le nombre d'éléments que le canal peut stocker sans bloquer l'expéditeur.
Exemple de création d'un canal tamponné avec une taille de tampon de 5:
ch := make(chan int, 5)
Si le tampon est plein, l'envoi dans le canal est bloqué jusqu'à ce que quelqu'un lise du canal. Si le tampon est de 0 (ou si le paramètre n'est pas spécifié), le canal est non tamponné et l'envoi est bloqué jusqu'à ce qu'une valeur soit reçue.
Ainsi, la gestion de la taille du tampon se résume à spécifier le deuxième paramètre lors de la création du canal.