From cbda14deaf49b48450207cfb0990c71c11d07a64 Mon Sep 17 00:00:00 2001 From: Andrew Burgess Date: Wed, 2 Nov 2022 13:48:42 +0000 Subject: gdb: new $_inferior_thread_count convenience variable Add a new convenience variable $_inferior_thread_count that contains the number of live (non-exited) threads in the current inferior. This can be used in command scripts, or breakpoint conditions, etc to adjust the behaviour for multi-threaded inferiors. This value is only stable in all-stop mode. In non-stop mode, where new threads can be started, and existing threads exit, at any time, this convenience variable can give a different value each time it is evaluated. --- gdbsupport/iterator-range.h | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'gdbsupport') diff --git a/gdbsupport/iterator-range.h b/gdbsupport/iterator-range.h index d35b03a..c99bdc8 100644 --- a/gdbsupport/iterator-range.h +++ b/gdbsupport/iterator-range.h @@ -53,6 +53,10 @@ struct iterator_range IteratorType end () const { return m_end; } + /* The number of items in this iterator_range. */ + std::size_t size () const + { return std::distance (m_begin, m_end); } + private: IteratorType m_begin, m_end; }; -- cgit v1.1