MythTV  master
Signals | Public Member Functions | Protected Slots | Static Private Member Functions | Private Attributes | Friends | List of all members
LogForwardThread Class Reference

The logging thread that forwards received messages to the consuming loggers via ZeroMQ. More...

#include <loggingserver.h>

Inheritance diagram for LogForwardThread:
Inheritance graph
[legend]
Collaboration diagram for LogForwardThread:
Collaboration graph
[legend]

Signals

void incomingSigHup (void)
 

Public Member Functions

 LogForwardThread ()
 LogForwardThread constructor. More...
 
 ~LogForwardThread () override
 LogForwardThread destructor. More...
 
void run (void) override
 Run the log forwarding thread. More...
 
void stop (void)
 Stop the thread by setting the abort flag. More...
 
- Public Member Functions inherited from MThread
 MThread (const QString &objectName)
 Standard constructor. More...
 
 MThread (const QString &objectName, QRunnable *runnable)
 Use this constructor if you want the default run() method to run the QRunnable's run() method instead of entering the Qt event loop. More...
 
virtual ~MThread ()
 
 MThread (const MThread &)=delete
 
MThreadoperator= (const MThread &)=delete
 
void RunProlog (void)
 Sets up a thread, call this if you reimplement run(). More...
 
void RunEpilog (void)
 Cleans up a thread's resources, call this if you reimplement run(). More...
 
QThread * qthread (void)
 Returns the thread, this will always return the same pointer no matter how often you restart the thread. More...
 
void setObjectName (const QString &name)
 
QString objectName (void) const
 
void setPriority (QThread::Priority priority)
 
QThread::Priority priority (void) const
 
bool isFinished (void) const
 
bool isRunning (void) const
 
void setStackSize (uint stackSize)
 
uint stackSize (void) const
 
void exit (int retcode=0)
 Use this to exit from the thread if you are using a Qt event loop. More...
 
void start (QThread::Priority p=QThread::InheritPriority)
 Tell MThread to start running the thread in the near future. More...
 
void terminate (void)
 Kill a thread unsafely. More...
 
void quit (void)
 calls exit(0) More...
 
bool wait (std::chrono::milliseconds time=std::chrono::milliseconds::max())
 Wait for the MThread to exit, with a maximum timeout. More...
 

Protected Slots

static void handleSigHup (void)
 SIGHUP handler - reopen all open logfiles for logrollers. More...
 

Static Private Member Functions

static void forwardMessage (LoggingItem *item)
 

Private Attributes

bool m_aborted {false}
 Flag to abort the thread. More...
 

Friends

void logSigHup (void)
 

Additional Inherited Members

- Static Public Member Functions inherited from MThread
static void ThreadSetup (const QString &name)
 This is to be called on startup in those few threads that haven't been ported to MThread. More...
 
static void ThreadCleanup (void)
 This is to be called on exit in those few threads that haven't been ported to MThread. More...
 
static void Cleanup (void)
 This will print out all the running threads, call exit(1) on each and then wait up to 5 seconds total for all the threads to exit. More...
 
static void GetAllThreadNames (QStringList &list)
 
static void GetAllRunningThreadNames (QStringList &list)
 
- Protected Member Functions inherited from MThread
int exec (void)
 Enters the qt event loop. call exit or quit to exit thread. More...
 
- Static Protected Member Functions inherited from MThread
static void setTerminationEnabled (bool enabled=true)
 
static void usleep (std::chrono::microseconds time)
 
template<typename R , typename P >
static std::enable_if_t< std::chrono::treat_as_floating_point< R >::value, void > usleep (std::chrono::duration< R, P > time)
 
- Protected Attributes inherited from MThread
MThreadInternalm_thread {nullptr}
 
QRunnable * m_runnable {nullptr}
 
bool m_prologExecuted {true}
 
bool m_epilogExecuted {true}
 

Detailed Description

The logging thread that forwards received messages to the consuming loggers via ZeroMQ.

Definition at line 95 of file loggingserver.h.

Constructor & Destructor Documentation

◆ LogForwardThread()

LogForwardThread::LogForwardThread ( )

LogForwardThread constructor.

Definition at line 328 of file loggingserver.cpp.

◆ ~LogForwardThread()

LogForwardThread::~LogForwardThread ( )
override

LogForwardThread destructor.

Definition at line 335 of file loggingserver.cpp.

Member Function Documentation

◆ run()

void LogForwardThread::run ( void  )
overridevirtual

Run the log forwarding thread.

This thread reads from an internal queue and handles distributing the LoggingItems to each logger instance vi ZeroMQ (inproc).

Reimplemented from MThread.

Definition at line 344 of file loggingserver.cpp.

◆ stop()

void LogForwardThread::stop ( void  )

Stop the thread by setting the abort flag.

Definition at line 490 of file loggingserver.cpp.

Referenced by logForwardStop(), and ~LogForwardThread().

◆ forwardMessage()

void LogForwardThread::forwardMessage ( LoggingItem item)
staticprivate

Definition at line 422 of file loggingserver.cpp.

Referenced by run().

◆ incomingSigHup

void LogForwardThread::incomingSigHup ( void  )
signal

Referenced by run().

◆ handleSigHup

void LogForwardThread::handleSigHup ( void  )
staticprotectedslot

SIGHUP handler - reopen all open logfiles for logrollers.

Definition at line 407 of file loggingserver.cpp.

Referenced by run().

Friends And Related Function Documentation

◆ logSigHup

void logSigHup ( void  )
friend

Member Data Documentation

◆ m_aborted

bool LogForwardThread::m_aborted {false}
private

Flag to abort the thread.

Definition at line 106 of file loggingserver.h.

Referenced by run(), and stop().


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