Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Tom Tromey <tom@tromey.com>
To: Patrick Monnerat via Gdb-patches <gdb-patches@sourceware.org>
Subject: Re: [PATCH] Add a timeout parameter to gdb_do_one_event
Date: Fri, 27 Aug 2021 12:08:15 -0600	[thread overview]
Message-ID: <87wno6n4kw.fsf@tromey.com> (raw)
In-Reply-To: <60a52fef-89f0-62f1-1a45-5e5a40f47df6@monnerat.net> (Patrick Monnerat via Gdb-patches's message of "Thu, 26 Aug 2021 13:36:31 +0200")

>>>>> "Patrick" == Patrick Monnerat via Gdb-patches <gdb-patches@sourceware.org> writes:

Patrick> The real implementation makes the GUI event loop call gdb_do_one_event
Patrick> and recursively. The actual event waiting is performed by 
Patrick> gdb_do_one_event, but the GUI may define a timeout for it. The hard
Patrick> task here is to avoid infinite recursion.

I wonder sometimes how we'll handle integrating event loops when we want
to let users integrate Python await with GDB APIs.

Patrick> The alternate solution would have been to run the GUI in a separate
Patrick> thread, but that's even a bigger work!

This is what my Python GUI does, but indeed it's complicated.  It needed
a hack (to block some signals in the GUI thread), and it has to send
Python code back and forth between the GUI thread and the main thread,
because GDB isn't thread-safe.

Tom

  parent reply	other threads:[~2021-08-27 18:08 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-08-23 18:23 Patrick Monnerat via Gdb-patches
2021-08-26  3:24 ` Simon Marchi via Gdb-patches
2021-08-26 11:36   ` Patrick Monnerat via Gdb-patches
2021-08-26 13:47     ` Simon Marchi via Gdb-patches
2021-08-26 15:14       ` Patrick Monnerat via Gdb-patches
2022-03-14 14:49         ` [PING] " Patrick Monnerat via Gdb-patches
2021-08-27 18:08     ` Tom Tromey [this message]
2021-08-28  0:07       ` [PATCH] " Patrick Monnerat via Gdb-patches
2021-08-26 18:30 Patrick Monnerat via Gdb-patches
2022-03-14 14:49 Patrick Monnerat via Gdb-patches
2022-03-14 16:17 ` Pedro Alves
2022-03-17 13:08 Patrick Monnerat via Gdb-patches
2022-04-15 16:21 ` Tom Tromey
2022-04-16  0:38   ` Patrick Monnerat via Gdb-patches
2022-07-22 13:41 ` Simon Marchi via Gdb-patches
2022-07-22 22:45   ` Patrick Monnerat via Gdb-patches
2022-07-25  1:07     ` Simon Marchi via Gdb-patches
2022-08-18 11:16 ` Andrew Burgess via Gdb-patches
2022-08-19 11:29   ` Patrick Monnerat via Gdb-patches
2022-08-23 18:38     ` Tom Tromey

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87wno6n4kw.fsf@tromey.com \
    --to=tom@tromey.com \
    --cc=gdb-patches@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox