Channel (código da pasta 7) recebe valor sem ser es... | Fórum | School of Net

Deseja poder participar de nosso fórum e tirar todas as suas dúvidas?
Clique aqui e assine nosso plano de acesso ilimitado. Saiba mais.

por Rodrigo

1 semana, 4 dias atrás Rodrigo

Channel (código da pasta 7) recebe valor sem ser esvaziado?

``` func funnel(channel1, channel2 <-chan string) <-chan string { channel := make(chan string) go func() { for { channel <- <-channel1 } }() go func() { for { channel <- <-channel2 } }() return channel } ``` Boa noite, no fonte acima a função funnel recebe os valores de channel1 e channel2, e joga tudo para dentro de channel, mas como isso é feito dentro de um for, ele passa várias vezes ali. Não entendi como channel consegue receber várias vezes o valor sem ser esvaziado. Poderia me explicar melhor essa parte? Obrigado

2 Respostas