LLDB mainline
|
#include <QueueList.h>
Public Types | |
typedef std::vector< lldb::QueueSP > | collection |
typedef LockingAdaptedIterable< collection, lldb::QueueSP, vector_adapter, std::mutex > | QueueIterable |
Public Member Functions | |
QueueList (Process *process) | |
~QueueList () | |
uint32_t | GetSize () |
Get the number of libdispatch queues that are available. | |
lldb::QueueSP | GetQueueAtIndex (uint32_t idx) |
Get the Queue at a given index number. | |
QueueIterable | Queues () |
Iterate over the list of queues. | |
void | Clear () |
Clear out the list of queues from the QueueList. | |
void | AddQueue (lldb::QueueSP queue) |
Add a Queue to the QueueList. | |
lldb::QueueSP | FindQueueByID (lldb::queue_id_t qid) |
Find a queue in the QueueList by QueueID. | |
lldb::QueueSP | FindQueueByIndexID (uint32_t index_id) |
Find a queue in the QueueList by IndexID. | |
std::mutex & | GetMutex () |
Protected Attributes | |
Process * | m_process |
The process that manages this queue list. | |
uint32_t | m_stop_id |
The process stop ID that this queue list is valid for. | |
collection | m_queues |
The queues for this process. | |
std::mutex | m_mutex |
Private Member Functions | |
QueueList ()=delete | |
Friends | |
class | Process |
Definition at line 28 of file QueueList.h.
typedef std::vector<lldb::QueueSP> lldb_private::QueueList::collection |
Definition at line 50 of file QueueList.h.
typedef LockingAdaptedIterable<collection, lldb::QueueSP, vector_adapter, std::mutex> lldb_private::QueueList::QueueIterable |
Definition at line 53 of file QueueList.h.
QueueList::QueueList | ( | Process * | process | ) |
Definition at line 16 of file QueueList.cpp.
QueueList::~QueueList | ( | ) |
Definition at line 19 of file QueueList.cpp.
References Clear().
|
privatedelete |
void QueueList::AddQueue | ( | lldb::QueueSP | queue | ) |
[in] | queue | Used by the SystemRuntime to populate the QueueList |
Definition at line 40 of file QueueList.cpp.
References m_mutex, and m_queues.
Referenced by SystemRuntimeMacOSX::PopulateQueueList(), SystemRuntimeMacOSX::PopulateQueuesUsingLibBTR(), and lldb_private::ScriptedProcess::UpdateQueueListIfNeeded().
void QueueList::Clear | ( | ) |
Clear out the list of queues from the QueueList.
Definition at line 35 of file QueueList.cpp.
References m_mutex, and m_queues.
Referenced by lldb_private::Process::Finalize(), lldb_private::Process::Flush(), lldb_private::Process::UpdateThreadListIfNeeded(), and ~QueueList().
lldb::QueueSP QueueList::FindQueueByID | ( | lldb::queue_id_t | qid | ) |
Find a queue in the QueueList by QueueID.
[in] | qid | The QueueID (same as returned by Thread::GetQueueID()) to find. |
Definition at line 47 of file QueueList.cpp.
References Queues().
Referenced by SystemRuntimeMacOSX::PopulateQueueList().
lldb::QueueSP QueueList::FindQueueByIndexID | ( | uint32_t | index_id | ) |
Find a queue in the QueueList by IndexID.
[in] | index_id | Find a queue by IndexID. This is an integer associated with each unique queue seen during a debug session and will not be reused for a different queue. Unlike the QueueID, a 64-bit value, this will tend to be an integral value like 1 or 7. |
Definition at line 58 of file QueueList.cpp.
References Queues().
std::mutex & QueueList::GetMutex | ( | ) |
Definition at line 69 of file QueueList.cpp.
References m_mutex.
lldb::QueueSP QueueList::GetQueueAtIndex | ( | uint32_t | idx | ) |
uint32_t QueueList::GetSize | ( | ) |
Get the number of libdispatch queues that are available.
Definition at line 21 of file QueueList.cpp.
References m_mutex, and m_queues.
Referenced by lldb_private::Process::UpdateQueueListIfNeeded().
|
inline |
Iterate over the list of queues.
Definition at line 60 of file QueueList.h.
References m_mutex, and m_queues.
Referenced by FindQueueByID(), FindQueueByIndexID(), and lldb_private::Process::Queues().
|
friend |
Definition at line 29 of file QueueList.h.
|
protected |
Definition at line 102 of file QueueList.h.
Referenced by AddQueue(), Clear(), GetMutex(), GetQueueAtIndex(), GetSize(), and Queues().
|
protected |
The process that manages this queue list.
Definition at line 98 of file QueueList.h.
|
protected |
The queues for this process.
Definition at line 101 of file QueueList.h.
Referenced by AddQueue(), Clear(), GetQueueAtIndex(), GetSize(), and Queues().
|
protected |
The process stop ID that this queue list is valid for.
Definition at line 100 of file QueueList.h.