This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
Re: threads and target-function-calls
On Tue, Jan 07, 2003 at 06:49:27PM -0800, Dan Mosedale wrote:
> Daniel Jacobowitz wrote:
>
> >On Tue, Jan 07, 2003 at 05:00:25PM -0800, Michael Snyder wrote:
> >
> >
> >>Hey folks,
> >>
> >>Did you know that (at least on x86 linux), if you have a multi-thread
> >>program and you execute a target function call, all the threads get to
> >>run? Doesn't that seem like a bad thing? Wouldn't we really rather
> >>only run the thread that is executing the target function call?
> >>
> >>
> >
> >Eeeeek! I think I agree with you here; that's the logical behavior.
> >It never occured to me to try.
> >
> What happens if the target function wants to interact with another
> thread? e.g. wait on a mutex being held by another thread?
It'll deadlock; the user will Control-C; then he can either use
"return" to cancel the call, or free the mutex himself, or whatever.
Letting all threads just resume what they were doing doesn't seem to
make sense in general...
--
Daniel Jacobowitz
MontaVista Software Debian GNU/Linux Developer