9#ifndef LLDB_TARGET_QUEUE_H
10#define LLDB_TARGET_QUEUE_H
32class Queue :
public std::enable_shared_from_this<Queue> {
35 const char *queue_name);
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)
Queue(const Queue &)=delete
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
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 PushPendingQueueItem(lldb::QueueItemSP item)
void SetKind(lldb::QueueKind kind)
lldb::ProcessSP GetProcess() const
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.
const Queue & operator=(const Queue &)=delete
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)
A class that represents a running process on the host machine.
std::shared_ptr< lldb_private::Process > ProcessSP
std::weak_ptr< lldb_private::Process > ProcessWP
std::shared_ptr< lldb_private::QueueItem > QueueItemSP