On Tue, Dec 4, 2018 at 5:54 PM Alex Dvoretskiy <advoretski...@gmail.com> wrote:
>
> Thanks.
> One question, we do "defer close(out)", but we don't close "in" channel. Why 
> garbage collector don't remove "out" channel? We don't write nothing to it in 
> function 3. So it should be empty.

closing a channel sends a signal through the channel that no more data
will be coming, so any goroutines waiting on that channel can resume.
Without close, a for loop waiting on a channel will wait indefinitely.

A channel will be garbage collected once all references to it are
gone, whether it is closed or not.



>
> On Tuesday, December 4, 2018 at 3:52:45 PM UTC-8, Alex Dvoretskiy wrote:
>>
>> I'm getting "fatal error: all goroutines are asleep - deadlock! on this code.
>>
>> Why?
>>
>> https://play.golang.org/p/KgJKu96PF7Q
>
> --
> You received this message because you are subscribed to the Google Groups 
> "golang-nuts" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to golang-nuts+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to