cmn-clib(CommonLibraryForC)
C言語共通ライブラリ
 全て データ構造 ファイル 関数 変数 型定義 列挙型 列挙値 マクロ定義
CmnThread.h ファイル

スレッドライブラリ ヘッダファイル [詳解]

#include "cmnclib/Common.h"
#include <pthread.h>

[ソースコード]

データ構造

struct  tag_CmnThreadMutex
 
struct  tag_CmnThread
 

型定義

typedef struct tag_CmnThreadMutex CmnThreadMutex
 
typedef struct tag_CmnThread CmnThread
 

関数

D_EXTERN void CmnThread_Init (CmnThread *thread, void(*method)(CmnThread *), void *data, CmnThreadMutex *mutex)
 スレッドオブジェクト初期化 [詳解]
 
D_EXTERN int CmnThread_Start (CmnThread *thread)
 スレッド処理開始 [詳解]
 
D_EXTERN void CmnThread_Join (CmnThread *thread)
 スレッド処理待ち合わせ [詳解]
 
D_EXTERN void CmnThread_Kill (CmnThread *thread)
 スレッド強制終了 [詳解]
 
D_EXTERN CmnThreadMutexCmnThreadMutex_Create ()
 Mutex作成 [詳解]
 
D_EXTERN void CmnThreadMutex_Lock (CmnThreadMutex *mutex)
 Mutexロック取得 [詳解]
 
D_EXTERN void CmnThreadMutex_UnLock (CmnThreadMutex *mutex)
 Mutexロック解除 [詳解]
 
D_EXTERN void CmnThreadMutex_Free (CmnThreadMutex *mutex)
 Mutex破棄 [詳解]
 

詳解

スレッドライブラリ ヘッダファイル

スレッドライブラリのヘッダファイル。

著者
H.Kumagai
日付
2020-07-30

型定義詳解

typedef struct tag_CmnThread CmnThread

スレッドオブジェクト

Mutexオブジェクト

関数詳解

D_EXTERN void CmnThread_Init ( CmnThread thread,
void(*)(CmnThread *)  method,
void *  data,
CmnThreadMutex mutex 
)

スレッドオブジェクト初期化

スレッドオブジェクトを初期化する。 スレッド処理の最初に行うこと。

引数
threadスレッドオブジェクト
method別スレッドで実行する処理
dataCmnThread.dataに設定するオブジェクト。methodへのデータ受け渡しに使用する。使用しない場合はNULLを設定。
mutexmutexによる排他制御を行う場合に設定。mutexを使用しない場合はNULLを設定。
D_EXTERN void CmnThread_Join ( CmnThread thread)

スレッド処理待ち合わせ

対象のスレッド処理が完了するまでwaitする

引数
threadスレッドオブジェクト
D_EXTERN void CmnThread_Kill ( CmnThread thread)

スレッド強制終了

対象のスレッドを強制終了する

引数
threadスレッドオブジェクト
D_EXTERN int CmnThread_Start ( CmnThread thread)

スレッド処理開始

スレッド処理を開始する。

引数
threadスレッドオブジェクト
戻り値
0:正常、0以上:スレッドの開始に失敗した場合
D_EXTERN CmnThreadMutex* CmnThreadMutex_Create ( )

Mutex作成

スレッド間排他制御用のMutexを作成する

戻り値
Mutexオブジェクト
D_EXTERN void CmnThreadMutex_Free ( CmnThreadMutex mutex)

Mutex破棄

Mutexを破棄する

戻り値
Mutexオブジェクト
D_EXTERN void CmnThreadMutex_Lock ( CmnThreadMutex mutex)

Mutexロック取得

Mutexロックを取得する

戻り値
Mutexオブジェクト
D_EXTERN void CmnThreadMutex_UnLock ( CmnThreadMutex mutex)

Mutexロック解除

Mutexロックを解除する

戻り値
Mutexオブジェクト