WPILibC++ 2023.4.3
wpi::detail::SafeThreadOwnerBase Class Reference

Non-template owner base class for common owner code. More...

#include <wpi/SafeThread.h>

Inheritance diagram for wpi::detail::SafeThreadOwnerBase:
wpi::SafeThreadOwner< JCallbackThread< T > > wpi::SafeThreadOwner< Thread > wpi::SafeThreadOwner< wpi::detail::WorkerThreadThread > wpi::SafeThreadOwner< T > wpi::java::JCallbackManager< T > wpi::java::JSingletonCallbackManager< T >

Public Member Functions

void Stop ()
 
void Join ()
 
 SafeThreadOwnerBase () noexcept=default
 
 SafeThreadOwnerBase (const SafeThreadOwnerBase &)=delete
 
SafeThreadOwnerBaseoperator= (const SafeThreadOwnerBase &)=delete
 
 SafeThreadOwnerBase (SafeThreadOwnerBase &&other) noexcept
 
SafeThreadOwnerBaseoperator= (SafeThreadOwnerBase &&other) noexcept
 
 ~SafeThreadOwnerBase ()
 
 operator bool () const
 
std::thread::native_handle_type GetNativeThreadHandle ()
 
void SetJoinAtExit (bool joinAtExit)
 

Protected Member Functions

void Start (std::shared_ptr< SafeThreadBase > thr)
 
std::shared_ptr< SafeThreadBaseGetThreadSharedPtr () const
 

Friends

void swap (SafeThreadOwnerBase &lhs, SafeThreadOwnerBase &rhs) noexcept
 

Detailed Description

Non-template owner base class for common owner code.

Constructor & Destructor Documentation

◆ SafeThreadOwnerBase() [1/3]

wpi::detail::SafeThreadOwnerBase::SafeThreadOwnerBase ( )
defaultnoexcept

◆ SafeThreadOwnerBase() [2/3]

wpi::detail::SafeThreadOwnerBase::SafeThreadOwnerBase ( const SafeThreadOwnerBase )
delete

◆ SafeThreadOwnerBase() [3/3]

wpi::detail::SafeThreadOwnerBase::SafeThreadOwnerBase ( SafeThreadOwnerBase &&  other)
inlinenoexcept

◆ ~SafeThreadOwnerBase()

wpi::detail::SafeThreadOwnerBase::~SafeThreadOwnerBase ( )

Member Function Documentation

◆ GetNativeThreadHandle()

std::thread::native_handle_type wpi::detail::SafeThreadOwnerBase::GetNativeThreadHandle ( )

◆ GetThreadSharedPtr()

std::shared_ptr< SafeThreadBase > wpi::detail::SafeThreadOwnerBase::GetThreadSharedPtr ( ) const
protected

◆ Join()

void wpi::detail::SafeThreadOwnerBase::Join ( )

◆ operator bool()

wpi::detail::SafeThreadOwnerBase::operator bool ( ) const
explicit

◆ operator=() [1/2]

SafeThreadOwnerBase & wpi::detail::SafeThreadOwnerBase::operator= ( const SafeThreadOwnerBase )
delete

◆ operator=() [2/2]

SafeThreadOwnerBase & wpi::detail::SafeThreadOwnerBase::operator= ( SafeThreadOwnerBase &&  other)
inlinenoexcept

◆ SetJoinAtExit()

void wpi::detail::SafeThreadOwnerBase::SetJoinAtExit ( bool  joinAtExit)
inline

◆ Start()

void wpi::detail::SafeThreadOwnerBase::Start ( std::shared_ptr< SafeThreadBase thr)
protected

◆ Stop()

void wpi::detail::SafeThreadOwnerBase::Stop ( )

Friends And Related Function Documentation

◆ swap

void swap ( SafeThreadOwnerBase lhs,
SafeThreadOwnerBase rhs 
)
friend

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