Terra os a FAQ Abbott this, if I understand what you want correctly:
https://golang.org/doc/faq#no_goroutine_id

On Sun, Nov 25, 2018, 4:04 PM Russtopia <rma...@gmail.com wrote:

> That still doesn't address what I'm getting at -- it doesn't give a
> semantically meaningful name to the goroutines, in stack traces, source
> code, or in code visualization tools such as graphviz diagrams.
>
> What does that goroutine actually *do*? Is it a worker for some specific
> purpose, does it read from stdin and forward to a pty/socket, does it wait
> for data on some channel, does it sleep until a particular event occurs and
> then reboot the box ... ? 'EnclosingFunc$1', 'EnclosingFunc$2' aren't very
> useful names for documentation and the current Go syntax allows no
> specification of this by naming the goroutine itself, short of moving it
> completely out of the scope of the enclosing named function, and losing the
> benefits of a closure.
>
> I guess what I'm getting at is that goroutines can't be named for what
> they *mean* or *do*. Comments can of course explain this within the source
> code, but I think there would be a concrete benefit to defining a
> convention for comment-tagging goroutines, in provide this foothold for
> external documentation tools; or, perhaps even better, a way to actually
> name goroutines like how GCC allows named, nested functions. This could
> even improve the readability of stack traces could it not?
>
> I've already devised a 'comment above each goroutine' hack, plus a
> post-processing tool (basically a sed script) to massage the output of the
> graphviz 'dot' data, where I place info above each goroutine so it can be
> renamed in the output diagram. That addresses the naming issue within
> graphviz diagrams for me, for now.
>
>
> On Sun, 25 Nov 2018 at 15:28, Dan Kortschak <dan.kortsc...@adelaide.edu.au>
> wrote:
>
>> That package doesn't introspect on running code, so a goroutine name is
>> not necessary. go-callvis could label the anonymous functions by their
>> filepath:line number or something else.
>>
>> On Sun, 2018-11-25 at 15:12 -0800, Russtopia wrote:
>> > I recently tried out a go tool for outputting code structure
>> > visualization
>> > using graphviz -- https://github.com/TrueFurby/go-callvis
>> >
>> > I found that goroutines are just labelled <enclosing function>$1 or
>> > similar
>> > by go-callvis. I could of course be wrong, but my thinking is that
>> > this is
>> > not really a shortcoming of graphviz, but rather a lack of support
>> > for
>> > naming goroutines within the language itself as goroutines are also
>> > 'unnamed' in this sense within stack traces. It would aid in
>> > understanding
>> > the purpose of goroutines within a structure diagram if goroutines
>> > could be
>> > named somehow.
>> >
>> > I was hoping there was a way within Go to give goroutines meaningful
>> > names
>> > in such a way that graphviz-like tools could pick up on it and make
>> > meaningful annotations.
>> >
>> > The runtime would, I suppose, also have to suffix a goroutine ID to a
>> > goroutine's name, since calling a function that contained goroutines
>> > repeatedly would result in multiple instances of each goroutine.
>> >
>> >
>> > On Fri, 23 Nov 2018 at 22:36, <alex.besogo...@gmail.com> wrote:
>> >
>> > >
>> > > Debugging. For example, if I have a deadlocked request I might want
>> > > to
>> > > attach with a debugger and find where exactly it's stuck.
>> > >
>> > > Right now this is complicated, you have to examine stacks of all
>> > > goroutines to find the correct one.
>> > >
>> > > On Friday, November 23, 2018 at 9:24:42 PM UTC-8, Andrei Avram
>> > > wrote:
>> > > >
>> > > >
>> > > > What's the need for this?
>> > > --
>> > > 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.
>

-- 
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