rippled
Classes | Public Member Functions | Protected Member Functions | Private Attributes | List of all members
ripple::AsyncObject< Derived > Class Template Reference

Mix-in to track when all pending I/O is complete. More...

Collaboration diagram for ripple::AsyncObject< Derived >:
Collaboration graph
[legend]

Classes

class  CompletionCounter
 RAII container that maintains the count of pending I/O. More...
 

Public Member Functions

 ~AsyncObject ()
 
void addReference ()
 
void removeReference ()
 

Protected Member Functions

 AsyncObject ()
 

Private Attributes

std::atomic< int > m_pending
 

Detailed Description

template<class Derived>
class ripple::AsyncObject< Derived >

Mix-in to track when all pending I/O is complete.

Derived classes must be callable with this signature: void asyncHandlersComplete()

Definition at line 40 of file ResolverAsio.cpp.

Constructor & Destructor Documentation

◆ AsyncObject()

template<class Derived >
ripple::AsyncObject< Derived >::AsyncObject ( )
protected

Definition at line 43 of file ResolverAsio.cpp.

◆ ~AsyncObject()

template<class Derived >
ripple::AsyncObject< Derived >::~AsyncObject ( )

Definition at line 48 of file ResolverAsio.cpp.

Member Function Documentation

◆ addReference()

template<class Derived >
void ripple::AsyncObject< Derived >::addReference ( )

Definition at line 86 of file ResolverAsio.cpp.

◆ removeReference()

template<class Derived >
void ripple::AsyncObject< Derived >::removeReference ( )

Definition at line 92 of file ResolverAsio.cpp.

Member Data Documentation

◆ m_pending

template<class Derived >
std::atomic<int> ripple::AsyncObject< Derived >::m_pending
private

Definition at line 100 of file ResolverAsio.cpp.