Thanks Ian.

Aravindhan K

On Thu, Apr 9, 2020 at 3:21 AM Ian Lance Taylor <i...@golang.org> wrote:

> On Wed, Apr 8, 2020 at 10:19 AM Aravindhan K <aravindhank1...@gmail.com>
> wrote:
> >
> > If that is the case, in below code main go routine will a reach a
> situation where no other go routines running to wake it up.
> > But no deadlock is not detected.
> > https://play.golang.org/p/z1NMYQAi0KY
> > May I assume deadlock - detection couldn't pick up this scenario?
> > By using empty select{}, doesn't the coder purposely wishes to block
> forever?
>
> In general the deadlock detector fails in programs that use the
> network, because those programs generally have background goroutines,
> created by the runtime package, that wait for network activity.  So
> the deadlock detector thinks that the program is not deadlocked, but
> just sleeping waiting for something to happen on the network.
>
> Yes, select{} implies that that particular goroutines will block
> forever, but that doesn't mean that all other goroutines will block.
>
> Ian
>
>
>
>
> > On Wed, Apr 8, 2020 at 10:13 PM 'Vikram Ingawale' via golang-nuts <
> golang-nuts@googlegroups.com> wrote:
> >>
> >> Hi Manlio ,
> >>
> >> The select statement will block until one of its cases is executed and
> in your program the select statement doesn't have any cas. so it will block
> forever and resulting in deadlock
> >>
> >>
> >> Thanks,
> >> Vikram Ingawale
> >> ph : +91 9766984458
> >>
> >>
> >> On Wed, Apr 8, 2020 at 9:57 PM Manlio Perillo <manlio.peri...@gmail.com>
> wrote:
> >>>
> >>> On Wednesday, April 8, 2020 at 6:17:59 PM UTC+2, aravind...@gmail.com
> wrote:
> >>>>
> >>>>
> >>>> Hi All,
> >>>>
> >>>> I am not able to understand why this piece of go code  deadlocks.
> >>>> Doesn't empty select{} blocks forever, irrespective of other go
> routines  to wake that up.
> >>>>
> >>>> https://play.golang.org/p/zBWZPjTGYX7
> >>>>
> >>>
> >>> The error message is very clear:
> >>> "fatal error: all goroutines are asleep - deadlock!"
> >>>
> >>> The problem is that **all** the goroutines are waiting forever.
> >>>
> >>> Manlio
> >>>
> >>> --
> >>> 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.
> >>> To view this discussion on the web visit
> https://groups.google.com/d/msgid/golang-nuts/2f29cf8f-0e08-4e83-9a05-d6eb7aa4030d%40googlegroups.com
> .
> >>
> >> --
> >> 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.
> >> To view this discussion on the web visit
> https://groups.google.com/d/msgid/golang-nuts/CADuKi9r73RbYWhw5PSrTY0JVCEx5EYV0MrnSNg%2B_Eppy-p2%3DHw%40mail.gmail.com
> .
> >
> > --
> > 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.
> > To view this discussion on the web visit
> https://groups.google.com/d/msgid/golang-nuts/CAJn1S2Ob8R1hW2ix3cp2Sd9FOgzM0jcdEsr97suXshEAHSdtoQ%40mail.gmail.com
> .
>

-- 
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.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/golang-nuts/CAJn1S2Mx%2BRNE_THvDa_C8j%2BLfEmuQfZ9WN_4etVEf9h8Df5aRA%40mail.gmail.com.

Reply via email to