Implements processing the message queue in a separate thread. More...
Public Types | |
typedef icl_core::Queue< LogMessage > | MessageQueue |
Public Member Functions | |
virtual void | run () |
WorkerThread (LogOutputStream *output_stream, icl_core::ThreadPriority priority) | |
~WorkerThread () | |
Public Member Functions inherited from icl_core::logging::Thread | |
bool | execute () const |
void | join () |
bool | running () const |
bool | start () |
void | stop () |
Thread (icl_core::ThreadPriority priority=0) | |
virtual | ~Thread () |
Deletes the thread. Stops it if it is still running. More... | |
Public Attributes | |
Semaphore * | m_fill_count |
MessageQueue | m_message_queue |
Semaphore * | m_mutex |
LogOutputStream * | m_output_stream |
Additional Inherited Members | |
Protected Member Functions inherited from icl_core::Noncopyable | |
Noncopyable () | |
virtual | ~Noncopyable () |
Implements processing the message queue in a separate thread.
Definition at line 272 of file LogOutputStream.h.
Definition at line 298 of file LogOutputStream.h.
icl_core::logging::LogOutputStream::WorkerThread::WorkerThread | ( | LogOutputStream * | output_stream, |
icl_core::ThreadPriority | priority | ||
) |
Definition at line 544 of file LogOutputStream.cpp.
icl_core::logging::LogOutputStream::WorkerThread::~WorkerThread | ( | ) |
Definition at line 553 of file LogOutputStream.cpp.
|
virtual |
This is the function running in the thread. This has to be reimplemented from derived classes. If you start the thread by calling Start() this function is executed in the thread. If you call don't want that function to be executed in the thread you could call it directly in your derived class.
Implements icl_core::logging::Thread.
Definition at line 562 of file LogOutputStream.cpp.
Semaphore* icl_core::logging::LogOutputStream::WorkerThread::m_fill_count |
Definition at line 303 of file LogOutputStream.h.
MessageQueue icl_core::logging::LogOutputStream::WorkerThread::m_message_queue |
Definition at line 299 of file LogOutputStream.h.
Semaphore* icl_core::logging::LogOutputStream::WorkerThread::m_mutex |
Definition at line 302 of file LogOutputStream.h.
LogOutputStream* icl_core::logging::LogOutputStream::WorkerThread::m_output_stream |
Definition at line 290 of file LogOutputStream.h.