This is the mail archive of the gdb@sourceware.cygnus.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]

Re: non-blocking reads/writes and event loops


Jim Ingham wrote:

> So my vote is to eradicate ALL the blocking behavior, and make GDB a pure
> event driven application.  In the cases where you can't avoid blocking calls
> (like ptrace calls, for instance) we should consider spinning a helper
> thread, and doing the work there.  I am not in favor of a thread-happy
> approach for gdb, but the careful use of short-lived threads to do
> particular tasks is a lot more stable than forcing interrupt-driven
> programming on the unhappy GUI's that attempt to use gdb...

Thing is, it is hard.

It means completly inverting the expression evaluator.  I've seen an
outline for how to do it so that just inferior calls are async.  Making
GDB fine-grain event based means that even memory and register transfers
are restartable.

However, making GDB responsive to more than one active target may force
the issue, regardless of any GUI.

	Andrew

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