MySQL  8.0.20
Source Code Documentation
IB_thread Class Reference

#include <os0thread.h>

Public Types

enum  State {
  State::INVALID, State::NOT_STARTED, State::ALLOWED_TO_START, State::STARTED,
  State::STOPPED
}
 

Public Member Functions

State state () const
 
void start ()
 
void wait (State state_to_wait_for=State::STOPPED)
 
void join ()
 

Private Member Functions

void init (std::promise< void > &promise)
 
void set_state (State state)
 

Private Attributes

std::shared_future< void > m_shared_future
 
std::shared_ptr< std::atomic< State > > m_state
 

Friends

class Runnable
 

Member Enumeration Documentation

◆ State

enum IB_thread::State
strong
Enumerator
INVALID 
NOT_STARTED 
ALLOWED_TO_START 
STARTED 
STOPPED 

Member Function Documentation

◆ init()

void IB_thread::init ( std::promise< void > &  promise)
private

◆ join()

void IB_thread::join ( )

◆ set_state()

void IB_thread::set_state ( State  state)
private

◆ start()

void IB_thread::start ( )

◆ state()

State IB_thread::state ( ) const
inline

◆ wait()

void IB_thread::wait ( State  state_to_wait_for = State::STOPPED)

Friends And Related Function Documentation

◆ Runnable

friend class Runnable
friend

Member Data Documentation

◆ m_shared_future

std::shared_future<void> IB_thread::m_shared_future
private

◆ m_state

std::shared_ptr<std::atomic<State> > IB_thread::m_state
private

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