#include <thread_fast.h>
Public Member Functions | |
| thread_fast_t () | |
| ~thread_fast_t () | |
| int | create (thread_func_t aFunc, void *aData) |
| Returns zero if no error. | |
| void | join (void) |
| void | cancel (void) |
| Called only by the main thread. | |
| bool | exec_lock (void) |
Private Member Functions | |
| thread_fast_t (const thread_fast_t &) | |
| thread_fast_t & | operator= (const thread_fast_t &) |
| void * | funcMethod (void) |
Static Private Member Functions | |
| static void * | func (void *aThr) |
Private Attributes | |
| Mtx | _MtxA |
| Mtx | _MtxB |
| volatile bool | isRunning |
| volatile bool | mustExit |
| volatile thread_func_t | _Func |
| void * | _Data |
| rpa::thread_fast_t< Thr, Mtx >::thread_fast_t | ( | const thread_fast_t< Thr, Mtx > & | ) | [private] |
| rpa::thread_fast_t< Thr, Mtx >::thread_fast_t | ( | ) | [inline] |
| rpa::thread_fast_t< Thr, Mtx >::~thread_fast_t | ( | ) | [inline] |
| void rpa::thread_fast_t< Thr, Mtx >::cancel | ( | void | ) | [inline] |
Called only by the main thread.
| int rpa::thread_fast_t< Thr, Mtx >::create | ( | thread_func_t | aFunc, | |
| void * | aData | |||
| ) | [inline] |
Returns zero if no error.
Does not start the real thread if not necessary. If it was stopped, it has to be restarted.
| bool rpa::thread_fast_t< Thr, Mtx >::exec_lock | ( | void | ) | [inline] |
| static void* rpa::thread_fast_t< Thr, Mtx >::func | ( | void * | aThr | ) | [inline, static, private] |
| void* rpa::thread_fast_t< Thr, Mtx >::funcMethod | ( | void | ) | [inline, private] |
| void rpa::thread_fast_t< Thr, Mtx >::join | ( | void | ) | [inline] |
| thread_fast_t& rpa::thread_fast_t< Thr, Mtx >::operator= | ( | const thread_fast_t< Thr, Mtx > & | ) | [private] |
void* rpa::thread_fast_t< Thr, Mtx >::_Data [private] |
volatile thread_func_t rpa::thread_fast_t< Thr, Mtx >::_Func [private] |
These two variables are read and written by the main thread and the sub-thread, but all writes are protected by _MtxA
Mtx rpa::thread_fast_t< Thr, Mtx >::_MtxA [private] |
Mtx rpa::thread_fast_t< Thr, Mtx >::_MtxB [private] |
volatile bool rpa::thread_fast_t< Thr, Mtx >::isRunning [private] |
volatile bool rpa::thread_fast_t< Thr, Mtx >::mustExit [private] |
1.4.7