This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]