ワーカースレッドクラス
More...
#include <GxThread.h>
|
| GxWorkerThread (void) |
| コンストラクタ
|
|
void | initializeThreadLocalStorage (void) |
| TLSの初期化
|
|
static void | initializeMainThread (void) |
| メインスレッドの初期化
|
|
static void | terminateMainThread (void) |
| メインスレッドの終了
|
|
|
GX_FORCE_INLINE b32 | waitStartEvent (s32 milliSecond=-1) |
| 開始イベント待ち
|
|
GX_FORCE_INLINE b32 | setStartEvent (void) |
| 開始イベント開始
|
|
GX_FORCE_INLINE b32 | waitCompleteEvent (s32 milliSecond=-1) |
| 完了イベント待ち
|
|
GX_FORCE_INLINE b32 | setCompleteEvent (void) |
| 完了イベント開始
|
|
GX_FORCE_INLINE void | setRequestStop (void) |
| 停止リクエスト設定
|
|
GX_FORCE_INLINE b32 | isRequestStop (void) const |
| 停止リクエストチェック
|
|
void | createCallback (void) override |
| 作成時のコールバック関数
|
|
void | threadMain (void *pArgument) override |
| メインループ
|
|
|
enum class | PRIORITY {
LOW = -2
, BELOW
, NORMAL
, ABOVE
,
HIGH
, MAX = 5
} |
| 優先度 More...
|
|
| GxThread (void) |
| コンストラクタ
|
|
| ~GxThread (void) override |
| デストラクタ
|
|
b32 | isStop (void) const |
| 停止中か判定
|
|
constexpr u32 | getIndex (void) const |
| インデックスを取得
|
|
constexpr GxRandom * | getRandomGenerator (void) const |
| 乱数発生器を取得
|
|
b32 | create (void *pIn, PRIORITY priority, u32 stackSize, s32 cpuIndex=-1) |
| 作成
|
|
void | suspend (void) |
| サスペンド
|
|
void | resume (void) |
| サスペンドから復帰
|
|
constexpr | GxClassBase (void) |
| コンストラクタ
|
|
constexpr | GxClassBase (const GxClassBase &base) |
| コピーコンストラクタ
|
|
| ~GxClassBase (void) override |
| デストラクタ
|
|
constexpr | GxClassBaseRoot (void) |
| コンストラクタ
|
|
constexpr | GxClassBaseRoot (const GxClassBaseRoot &) |
| コピーコンストラクタ
|
|
virtual | ~GxClassBaseRoot (void) |
| デストラクタ
|
|
constexpr GxClassBaseRoot & | operator= (const GxClassBaseRoot &) |
| 代入演算子
|
|
virtual GxRtti & | getRtti (void) const =0 |
| Rttiの取得
|
|
virtual GX_FORCE_INLINE const GxTypedObject * | getDefaultObject (void) |
| デフォルトオブジェクトを取得
|
|
GX_FORCE_INLINE b32 | isDefaultObject (void) |
| デフォルトオブジェクト判定
|
|
static GxThread * | getCurrentThread (void) |
| カレントスレッドを取得
|
|
static GX_FORCE_INLINE void | setFixThread (b32 on) |
| スレッドのCPUを固定するか設定
|
|
static GX_FORCE_INLINE b32 | isFixThread (void) |
| スレッドのCPUを固定するか判定
|
|
static b32 | casU32 (volatile u32 *pTarget, u32 oldValue, u32 newValue) |
| 符号なし32bit整数CAS(Compare-And-Swap)
|
|
static b32 | casPointer (volatile void **ppTarget, void *pOld, void *pNew) |
| ポインタCAS(Compare-And-Swap)
|
|
static void | barrierMemory (void) |
| メモリバリア
|
|
static void | atomicExchangeU32 (volatile u32 *pTarget, u32 newValue) |
| アトミックU32
|
|
static void | sleep (u32 milliSecond) |
| スリープ
|
|
static GX_FORCE_INLINE GxRtti & | __getStaticRtti (void) |
| Rttiの取得
|
|
static constexpr u32 | THREAD_MAX = GxMath::VALUE_32 |
| スレッドの最大数
|
|
static constexpr u32 | INVALID_INDEX = 0xFFFFFFFF |
| 無効スレッドインデックス
|
|
static constexpr u32 | MAIN_THREAD_INDEX = 0 |
| メインスレッドインデックス
|
|
void | stop (void) |
| 停止(スレッド外からの呼び出し禁止)
|
|
GxNativeThread | _threadId |
| スレッドID
|
|
static GxThread * | _pThread [THREAD_MAX] = {nullptr} |
| スレッド自身のポインタ
|
|
static u32 | _num = 0 |
| 作ったスレッド数
|
|
◆ createCallback()
void GxWorkerThread::createCallback |
( |
void | | ) |
|
|
overrideprotectedvirtual |
作成時のコールバック関数
Reimplemented from GxThread.
◆ getCurrentWorkerIndex()
u32 GxWorkerThread::getCurrentWorkerIndex |
( |
void | | ) |
|
|
static |
カレントのワーカースレッド用インデックスを取得
- Returns
- ワーカースレッドインデックス
◆ threadMain()
void GxWorkerThread::threadMain |
( |
void * | pArgument | ) |
|
|
overrideprotectedvirtual |
The documentation for this class was generated from the following files:
- C:/Users/t-arai/Documents/workspace/orochi_package_windows/middleware/GxCore/src/GxThread.h
- C:/Users/t-arai/Documents/workspace/orochi_package_windows/middleware/GxCore/src/GxThread.cpp