WaitForSingleObject

WaitForSingleObjectは、指定されたオブジェクトがシグナル状態になるまで待つWindowsAPI・・・。

WaitForSingleObject 関数

ここでいうオブジェクトは、スレッドに限らず、プロセスやイベントなどさまざまなものがある・・・。
シグナル状態というは、スレッドでいえば、スレッドが終わった状態、プロセスでいえば、プロセスが終わった状態などである・・・。
これまでSleepで時間で待っていたが、これを使えば、終わるまで待つということができる・・・。

CreateThreadしたら、戻り値のハンドルhThreadをWaitForSingleObjectの第1引数に渡す・・・。
終わるまで待つという場合、第2引数にはINFINITEを指定する・・・。
スレッドが終了して、WaitForSingleObjectを抜けたら終了コードを出力・・・。

i = 1, m_iNo = 0, m_tszMessage = No.0
i = 2, m_iNo = 0, m_tszMessage = No.0
i = 3, m_iNo = 0, m_tszMessage = No.0
i = 4, m_iNo = 0, m_tszMessage = No.0
i = 5, m_iNo = 0, m_tszMessage = No.0
dwExitCode = 0
続行するには何かキーを押してください . . .

終わるまで待つということができた・・・。

Sample/WaitForSingleObject.cpp at master · bg1bgst333/Sample · GitHub