LLDB  mainline
Public Member Functions | Private Member Functions | Private Attributes | List of all members
lldb_private::process_gdb_remote::GDBRemoteClientBase::Lock Class Reference

#include <GDBRemoteClientBase.h>

Collaboration diagram for lldb_private::process_gdb_remote::GDBRemoteClientBase::Lock:
Collaboration graph
[legend]

Public Member Functions

 Lock (GDBRemoteClientBase &comm, std::chrono::seconds interrupt_timeout=std::chrono::seconds(0))
 
 ~Lock ()
 
 operator bool ()
 
bool DidInterrupt () const
 

Private Member Functions

void SyncWithContinueThread ()
 

Private Attributes

std::unique_lock< std::recursive_mutex > m_async_lock
 
GDBRemoteClientBasem_comm
 
std::chrono::seconds m_interrupt_timeout
 
bool m_acquired
 
bool m_did_interrupt
 

Detailed Description

Definition at line 66 of file GDBRemoteClientBase.h.

Constructor & Destructor Documentation

◆ Lock()

GDBRemoteClientBase::Lock::Lock ( GDBRemoteClientBase comm,
std::chrono::seconds  interrupt_timeout = std::chrono::seconds(0) 
)

Definition at line 367 of file GDBRemoteClientBase.cpp.

References m_acquired, m_async_lock, and SyncWithContinueThread().

◆ ~Lock()

GDBRemoteClientBase::Lock::~Lock ( )

Definition at line 408 of file GDBRemoteClientBase.cpp.

Member Function Documentation

◆ DidInterrupt()

bool lldb_private::process_gdb_remote::GDBRemoteClientBase::Lock::DidInterrupt ( ) const
inline

◆ operator bool()

lldb_private::process_gdb_remote::GDBRemoteClientBase::Lock::operator bool ( )
inlineexplicit

Definition at line 78 of file GDBRemoteClientBase.h.

References m_acquired.

◆ SyncWithContinueThread()

void GDBRemoteClientBase::Lock::SyncWithContinueThread ( )
private

Member Data Documentation

◆ m_acquired

bool lldb_private::process_gdb_remote::GDBRemoteClientBase::Lock::m_acquired
private

Definition at line 88 of file GDBRemoteClientBase.h.

Referenced by Lock(), and operator bool().

◆ m_async_lock

std::unique_lock<std::recursive_mutex> lldb_private::process_gdb_remote::GDBRemoteClientBase::Lock::m_async_lock
private

Definition at line 85 of file GDBRemoteClientBase.h.

Referenced by Lock().

◆ m_comm

GDBRemoteClientBase& lldb_private::process_gdb_remote::GDBRemoteClientBase::Lock::m_comm
private

Definition at line 86 of file GDBRemoteClientBase.h.

◆ m_did_interrupt

bool lldb_private::process_gdb_remote::GDBRemoteClientBase::Lock::m_did_interrupt
private

Definition at line 89 of file GDBRemoteClientBase.h.

Referenced by DidInterrupt().

◆ m_interrupt_timeout

std::chrono::seconds lldb_private::process_gdb_remote::GDBRemoteClientBase::Lock::m_interrupt_timeout
private

Definition at line 87 of file GDBRemoteClientBase.h.


The documentation for this class was generated from the following files: