LLDB  mainline
Public Member Functions | Private Member Functions | Private Attributes | List of all members
lldb_private::ThreadSafeValue< T > Class Template Reference

#include <ThreadSafeValue.h>

Inheritance diagram for lldb_private::ThreadSafeValue< T >:
Inheritance graph
[legend]
Collaboration diagram for lldb_private::ThreadSafeValue< T >:
Collaboration graph
[legend]

Public Member Functions

 ThreadSafeValue ()
 
 ThreadSafeValue (const T &value)
 
 ~ThreadSafeValue ()
 
GetValue () const
 
const T & GetValueNoLock () const
 
void SetValue (const T &value)
 
void SetValueNoLock (const T &value)
 
std::recursive_mutex & GetMutex ()
 

Private Member Functions

 ThreadSafeValue (const ThreadSafeValue &)=delete
 
const ThreadSafeValueoperator= (const ThreadSafeValue &)=delete
 

Private Attributes

m_value
 
std::recursive_mutex m_mutex
 

Detailed Description

template<class T>
class lldb_private::ThreadSafeValue< T >

Definition at line 18 of file ThreadSafeValue.h.

Constructor & Destructor Documentation

◆ ThreadSafeValue() [1/3]

template<class T>
lldb_private::ThreadSafeValue< T >::ThreadSafeValue ( )
inline

Definition at line 21 of file ThreadSafeValue.h.

◆ ThreadSafeValue() [2/3]

template<class T>
lldb_private::ThreadSafeValue< T >::ThreadSafeValue ( const T &  value)
inline

Definition at line 23 of file ThreadSafeValue.h.

◆ ~ThreadSafeValue()

template<class T>
lldb_private::ThreadSafeValue< T >::~ThreadSafeValue ( )
inline

Definition at line 25 of file ThreadSafeValue.h.

◆ ThreadSafeValue() [3/3]

template<class T>
lldb_private::ThreadSafeValue< T >::ThreadSafeValue ( const ThreadSafeValue< T > &  )
privatedelete

Member Function Documentation

◆ GetMutex()

template<class T>
std::recursive_mutex& lldb_private::ThreadSafeValue< T >::GetMutex ( )
inline

Definition at line 49 of file ThreadSafeValue.h.

◆ GetValue()

template<class T>
T lldb_private::ThreadSafeValue< T >::GetValue ( ) const
inline

◆ GetValueNoLock()

template<class T>
const T& lldb_private::ThreadSafeValue< T >::GetValueNoLock ( ) const
inline

Definition at line 38 of file ThreadSafeValue.h.

◆ operator=()

template<class T>
const ThreadSafeValue& lldb_private::ThreadSafeValue< T >::operator= ( const ThreadSafeValue< T > &  )
privatedelete

◆ SetValue()

template<class T>
void lldb_private::ThreadSafeValue< T >::SetValue ( const T &  value)
inline

Definition at line 40 of file ThreadSafeValue.h.

◆ SetValueNoLock()

template<class T>
void lldb_private::ThreadSafeValue< T >::SetValueNoLock ( const T &  value)
inline

Definition at line 47 of file ThreadSafeValue.h.

Referenced by lldb_private::Process::RunThreadPlan().

Member Data Documentation

◆ m_mutex

template<class T>
std::recursive_mutex lldb_private::ThreadSafeValue< T >::m_mutex
mutableprivate

◆ m_value

template<class T>
T lldb_private::ThreadSafeValue< T >::m_value
private

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