19 const char *queue_name)
20 : m_process_wp(), m_queue_id(queue_id), m_queue_name(),
21 m_running_work_items_count(0), m_pending_work_items_count(0),
41 std::vector<ThreadSP> result;
44 for (
ThreadSP thread_sp : process_sp->Threads()) {
46 result.push_back(thread_sp);
80 if (process_sp && process_sp->GetSystemRuntime()) {
81 process_sp->GetSystemRuntime()->PopulatePendingItemsForQueue(
this);
lldb::queue_id_t GetID()
Get the QueueID for this Queue.
void SetNumPendingWorkItems(uint32_t count)
uint32_t GetIndexID()
Get the IndexID for this Queue.
void SetNumRunningWorkItems(uint32_t count)
uint32_t m_running_work_items_count
lldb::QueueKind GetKind()
Return the kind (serial, concurrent) of this queue.
lldb::addr_t m_dispatch_queue_t_addr
Queue(lldb::ProcessSP process_sp, lldb::queue_id_t queue_id, const char *queue_name)
std::vector< lldb::QueueItemSP > m_pending_items
lldb::ProcessWP m_process_wp
uint32_t m_pending_work_items_count
const std::vector< lldb::QueueItemSP > & GetPendingItems()
Return the items that are currently enqueued.
void SetKind(lldb::QueueKind kind)
uint32_t GetNumRunningWorkItems() const
Get the number of work items that this queue is currently running.
lldb::addr_t GetLibdispatchQueueAddress() const
Get the dispatch_queue_t structure address for this Queue.
uint32_t GetNumPendingWorkItems() const
Get the number of work items enqueued on this queue.
const char * GetName()
Get the name of this Queue.
std::vector< lldb::ThreadSP > GetThreads()
Return the threads currently associated with this queue.
lldb::queue_id_t m_queue_id
void SetLibdispatchQueueAddress(lldb::addr_t dispatch_queue_t_addr)
#define LLDB_INVALID_ADDRESS
A class that represents a running process on the host machine.
std::shared_ptr< lldb_private::Thread > ThreadSP
std::shared_ptr< lldb_private::Process > ProcessSP