PLCnext API Documentation 25.0.2.69
|
Worker threads repeat the execution of the threaded code until Stop is called. More...
#include <WorkerThread.hpp>
Public Types | |
using | WorkDelegate = delegate< void(void)> |
The delegate of threads loop body. | |
Public Member Functions | |
template<class TInstance , class TFunction > | |
WorkerThread (TInstance &instance, TFunction fn, int idleTime, const char *threadName) | |
Constructs an WorkerThread instance for a class method. More... | |
template<class TInstance , class TFunction > | |
WorkerThread (const TInstance &instance, TFunction fn, int idleTime, const char *threadName) | |
Constructs an WorkerThread instance for a class method. More... | |
template<class TInstance , class TFunction > | |
WorkerThread (TInstance *pInstance, TFunction fn, int idleTime, const char *threadName) | |
Constructs an WorkerThread instance for a class method. More... | |
template<class TInstance , class TFunction > | |
WorkerThread (const TInstance *pInstance, TFunction fn, int idleTime, const char *threadName) | |
Constructs an WorkerThread instance for a class method. More... | |
template<class TInstance , class TFunction > | |
WorkerThread (ThreadSettings &settings, TInstance &instance, TFunction fn, int idleTime) | |
Constructs an WorkerThread instance. More... | |
template<class TInstance , class TFunction > | |
WorkerThread (ThreadSettings &settings, const TInstance &instance, TFunction fn, int idleTime) | |
Constructs an WorkerThread instance. More... | |
template<class TInstance , class TFunction > | |
WorkerThread (ThreadSettings &settings, TInstance *pInstance, TFunction fn, int idleTime) | |
Constructs an WorkerThread instance. More... | |
template<class TInstance , class TFunction > | |
WorkerThread (ThreadSettings &settings, const TInstance *pInstance, TFunction fn, int idleTime) | |
Constructs an WorkerThread instance. More... | |
WorkerThread (WorkDelegate &&loopDelegate, int idleTime, const char *threadName) | |
Constructs an WorkerThread instance. More... | |
WorkerThread (ThreadSettings &settings, WorkDelegate &&loopDelegate, int idleTime) | |
Constructs an WorkerThread instance. More... | |
~WorkerThread (void)=default | |
Deallocates the memory used for this instance but does not quit the thread. | |
bool | IsRunning (void) const |
Checks if the thread is in running state. More... | |
void | Start (void) |
Starts the execution of the thread. | |
void | Stop (void) |
Stops the execution of the thread syncronously. | |
Worker threads repeat the execution of the threaded code until Stop is called.
|
inline |
Constructs an WorkerThread instance for a class method.
instance | Instance of object whichs method should be executed in separate thread. |
fn | Pointer to method that should be executed in each thread loop. |
idleTimeArg | The idle time in ms. |
threadName | The name of the thread. |
Arp::System::Commons::InvalidOperationException | if the thread could not be created. |
|
inline |
Constructs an WorkerThread instance for a class method.
instance | Instance of object whichs method should be executed in separate thread. |
fn | Pointer to method that should be executed in each thread loop. |
idleTimeArg | The idle time in ms. |
threadName | The name of the thread. |
Arp::System::Commons::InvalidOperationException | if the thread could not be created. |
|
inline |
Constructs an WorkerThread instance for a class method.
pInstance | Pointer to instance of object whichs method should be executed in separate thread. |
fn | Pointer to method that should be executed in each thread loop. |
idleTimeArg | The idle time in ms. |
threadName | The name of the thread. |
Arp::System::Commons::InvalidOperationException | if the thread could not be created. |
|
inline |
Constructs an WorkerThread instance for a class method.
instance | Pointer to instance of object whichs method should be executed in separate thread. |
fn | Pointer to method that should be executed in each thread loop. |
idleTimeArg | The idle time in ms. |
threadName | The name of the thread. |
Arp::System::Commons::InvalidOperationException | if the thread could not be created. |
|
inline |
Constructs an WorkerThread instance.
settings | Reference to custom thread parameters. |
instance | Instance of object whichs method should be executed in separate thread. |
fn | Pointer to method that should be executed in each thread loop. |
idleTimeArg | The idle time in ms. |
Arp::System::Commons::InvalidOperationException | if the thread could not be created. |
|
inline |
Constructs an WorkerThread instance.
settings | Reference to custom thread parameters. |
instance | Instance of object whichs method should be executed in separate thread. |
fn | Pointer to method that should be executed in each thread loop. |
idleTimeArg | The idle time in ms. |
Arp::System::Commons::InvalidOperationException | if the thread could not be created. |
|
inline |
Constructs an WorkerThread instance.
settings | Reference to custom thread parameters. |
pInstance | Pointer to instance of object whichs method should be executed in separate thread. |
fn | Pointer to method that should be executed in each thread loop. |
idleTimeArg | The idle time in ms. |
Arp::System::Commons::InvalidOperationException | if the thread could not be created. |
|
inline |
Constructs an WorkerThread instance.
settings | Reference to custom thread parameters. |
pInstance | Pointer to instance of object whichs method should be executed in separate thread. |
fn | Pointer to method that should be executed in each thread loop. |
idleTimeArg | The idle time in ms. |
Arp::System::Commons::InvalidOperationException | if the thread could not be created. |
Arp::System::Commons::Threading::WorkerThread::WorkerThread | ( | WorkDelegate && | workDelegate, |
int | idleTime, | ||
const char * | threadName | ||
) |
Constructs an WorkerThread instance.
loopDelegate | Loop body delegate to be executed in each thread loop. |
idleTimeArg | The idle time in ms. |
threadName | The name of the thread. |
Arp::System::Commons::InvalidOperationException | if the thread could not be created. |
Arp::System::Commons::Threading::WorkerThread::WorkerThread | ( | ThreadSettings & | settings, |
WorkDelegate && | workDelegate, | ||
int | idleTimeArg | ||
) |
Constructs an WorkerThread instance.
settings | Reference to custom thread parameters. |
loopDelegate | Loop body delegate to be executed in each thread loop. |
idleTimeArg | The idle time in ms. |
Arp::System::Commons::InvalidOperationException | if the thread could not be created. |
bool Arp::System::Commons::Threading::WorkerThread::IsRunning | ( | void | ) | const |
Checks if the thread is in running state.
Determines if this thread is in running state.