[lldb-dev] Async vs. sync

Malea, Daniel daniel.malea at intel.com
Mon Sep 30 12:59:57 PDT 2013


Hi Richard,

I don't believe there's a user-facing command to enable async mode explicitly -- SBDebugger::SetAsync() is available only via the API and is used in a few places by the command line driver where LLDB doesn't want to wait for a command to complete before returning to the prompt. For an example, see Driver.cpp:1596 which implements attaching to a process via "lldb -p <pid>" and allows users to issue commands while the process is still running.

In terms of user-friendliness, I think it would be better to add async variants of commands (like GDB's "run&") by supporting an optional "--async" flag in commands where it makes sense (like "process launch"), than to allow users access to the global async switch (a la GDB's "set target-async on" command) which has much further-reaching implications for the whole debugger...

That said, the async switch is still somewhat foreign to me, as I've only dealt with it in the context of a few testcases. Greg/Jim may have thought more about this subject and may have further insight.

Cheers,
Dan

-----Original Message-----
From: lldb-dev-bounces at cs.uiuc.edu [mailto:lldb-dev-bounces at cs.uiuc.edu] On Behalf Of Richard Mitton
Sent: Monday, September 30, 2013 3:16 PM
To: lldb-dev at cs.uiuc.edu
Subject: [lldb-dev] Async vs. sync

Hi,

I was wondering if anyone could briefly explain to me the difference between synchronous and asynchronous modes, from the point of view of the command-line driver.

I presume async mode is to allow commands to be entered without halting the inferior? Like GDB's run&? But I can't seem to figure out how to enable that anywhere.

--
Richard Mitton
richard at codersnotes.com

_______________________________________________
lldb-dev mailing list
lldb-dev at cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev




More information about the lldb-dev mailing list