This is the mail archive of the
gdb@sourceware.org
mailing list for the GDB project.
Re: non-stop and current thread exiting
On Thursday 05 June 2008 17:18:20 Marc Khouzam wrote:
>
> > What I was thinking if that if you select a thread, and continue it,
> > and the thread exits, it would be more user-friendly to gray this
> > thread, add "(exited)" and then retire it next time we stop.
>
> That is an interesting idea. As all UI ideas, its value will be
> determined in actual usage.
Of course.
> But it may be nice to have this option.
Right.
>
> > You are right that some frontend changes will be required -- but they
> > are required anyway to show the "running" state of the thread, so
> > seems the extra change to show "exited" state does not add much
> > complexity.
>
> If the output of thread-list-ids is simply augmented with (exited),
> you are right that it would be an easy change for a frontend.
Actually, I plan that in the output of -thread-info, each thread will have a field
'state', that can be either 'stopped' or 'running' or 'exited'. So, a frontend
not wishing to specially display exited threads will ignore threads with
state=exited.
(Incidentally, we might want to introduce more fine-grained values of state, like
'stepping').
> > > In the case of b) or c) one point that is important for the
> > > a frontend is how GDB will react to prohibited commands
> > > when no thread is selected? Will a prohibited command
> > > cause an ^error or maybe an empty ^done, or something else?
> >
> > With (b), you always have some thread selected. When it is actually
> > exited thread, I'd say ^error is the best way. If you send a command
> > and get empty ^done, while you expect some data in the response, it's
> > not very good, I think.
>
> Sounds right.
OK.
- Volodya