Provides asynchronous message logging. More...
#include <cadex/Utilities/LoggerAsyncHandler.hxx>
Public Member Functions | |
| LoggerAsyncHandler () | |
| Constructor. | |
| void | Register (const std::shared_ptr< LoggerHandler > &theHandler, const LoggerLevel theMinLevel=LoggerLevel::Trace, const LoggerLevel theMaxLevel=LoggerLevel::Fatal) |
| Adds a handler. | |
| void | Unregister (const std::shared_ptr< LoggerHandler > &theHandler) |
| Removes a handler. | |
Public Member Functions inherited from cadex::Utilities::LoggerHandler | |
| virtual | ~LoggerHandler () |
| Destructor. | |
| internal::LoggerHandlerImpl * | Impl () const |
| Reserved for internal use. | |
| template<typename T > | |
| T * | Impl () const |
| Reserved for internal use. | |
Additional Inherited Members | |
Protected Member Functions inherited from cadex::Utilities::LoggerHandler | |
| LoggerHandler (std::unique_ptr< internal::LoggerHandlerImpl > &&theImpl) | |
| Constructor. | |
Provides asynchronous message logging.
The asynchronous handler serves as a proxy object for the logger and is useful when a particular handler takes considerable time to process a message.
The asynchronous handler maintains a list of other registered handlers and forwards them a message in a separate thread.
The message is delivered to the handlers in the order they were registered in the asynchronous handler.