#include <RxThreadPoolService.h>
Corresponding C++ library: TD_DbRoot <group OdRx_Classes>
Definition at line 407 of file RxThreadPoolService.h.
◆ executeMainThreadAction()
Execute action in the main thread (doesn't depend on multithread queues count).
- Parameters
-
| mtFunc | [in] Function to execute in the main thread. |
| pArg | [in] Function argument to execute in the main thread. |
◆ externalThreadStart()
| virtual void OdRxThreadPoolService::externalThreadStart |
( |
| ) |
|
|
pure virtual |
Inform the ODA Platform that external thread started.
◆ externalThreadStop()
| virtual void OdRxThreadPoolService::externalThreadStop |
( |
| ) |
|
|
pure virtual |
Inform the ODA Platform that external thread stopped.
◆ getCurrentThreadId()
| virtual unsigned int OdRxThreadPoolService::getCurrentThreadId |
( |
| ) |
const |
|
pure virtual |
Returns current thread id
◆ getExternalMainThreadFunc()
Returns current function for execution in the external main thread.
◆ getMainThreadId()
| virtual unsigned int OdRxThreadPoolService::getMainThreadId |
( |
| ) |
const |
|
pure virtual |
◆ init()
| virtual void OdRxThreadPoolService::init |
( |
| ) |
|
|
pure virtual |
◆ isMainThread()
| bool OdRxThreadPoolService::isMainThread |
( |
| ) |
const |
|
inline |
◆ newEvent()
Creates APC event object.
◆ newGateway()
Creates APC gateway object.
◆ newLoopedGateway()
Creates APC sync point object.
◆ newMTQueue()
Creates mutiple thread processing queue.
- Parameters
-
| nThreadAttributes | [in] Set of the attributes for the threads to run. |
| numThreads | [in] Number of threads for this queue. |
| nFlags | [in] Set of flags for new MtQueue construction. |
◆ newObjectPool()
Creates APC object pool object.
◆ newSTQueue()
Creates synchronized (single thread) queue.
◆ newThread()
Creates APC thread object. This method is expected for threads that are captured and managed on user side creation, as it guarantees access to threads for temporary operations managed by Thread Pool Service.
- Returns
- A smart pointer to newly created APC Thread object if there is no avalable APC Threads in the pool, or available APC Tread object from the Thread Pool Service.
◆ numCPUs()
| virtual int OdRxThreadPoolService::numCPUs |
( |
| ) |
const |
|
pure virtual |
Returns number of logical CPUs installed on this machine.
◆ numFreeThreads()
| virtual int OdRxThreadPoolService::numFreeThreads |
( |
| ) |
const |
|
pure virtual |
Returns number of currently available free threads in the pool.
◆ numPhysicalCores()
| virtual int OdRxThreadPoolService::numPhysicalCores |
( |
| ) |
const |
|
pure virtual |
Returns number of physical CPU cores installed on this machine.
◆ numThreads()
| virtual int OdRxThreadPoolService::numThreads |
( |
| ) |
const |
|
pure virtual |
Returns number of all threads in the pool.
◆ ODRX_DECLARE_MEMBERS()
◆ registerExternalThreads()
| virtual void OdRxThreadPoolService::registerExternalThreads |
( |
unsigned | nThreads, |
|
|
const unsigned * | aThreads, |
|
|
unsigned | nThreadAttribs = ThreadsCounter::kNoAttributes ) |
|
pure virtual |
Register externally executed threads.
- Parameters
-
| nThreads | [in] Count of threads in aThreads array. |
| aThreads | [in] Thread ID's array. |
| nThreadAttributes | [in] Set of attributes for running threads. |
◆ setExternalMainThreadFunc()
Setup function for provide execution in the external main thread.
- Parameters
-
| execFunc | [in] Main thread execution function. |
◆ unregisterExternalThreads()
| virtual void OdRxThreadPoolService::unregisterExternalThreads |
( |
unsigned | nThreads, |
|
|
const unsigned * | aThreads ) |
|
pure virtual |
Unregister externally executed threads.
- Parameters
-
| nThreads | [in] Count of threads in aThreads array. |
| aThreads | [in] Thread ID's array. |
The documentation for this class was generated from the following file: