2つのスレッドを含むC++コードがあります。スレッド2のイベント「A」の後、スレッド1を一時停止(一時停止)し、スレッド2でさらにいくつかのタスクを実行し(イベント「B」など)、最後にスレッド1を再開する必要があります。これを行う方法はありますか?
私のコードは次のようになります。
HANDLE C;
DWORD WINAPI A (LPVOID in)
{
while(1){
// some operation
}
return 0;
}
DWORD WINAPI B (LPVOID in)
{
while(1){
//Event A occurs here
SuspendThread (C);
//Event B occurs here
ResumeThread (C);
}
return 0;
}
int main()
{
C = CreateThread (NULL, 0, A, NULL, 0, NULL);
CreateThread (NULL, 0, B, NULL, 0, NULL);
return 0;
}