C ++ - Algorithmus mit mehreren Threads für Benachrichtigungs-Wartemuster

Ich bin auf der Suche nach Ratschlägen und Codebeispielen für eine Multithread-Implementierung unter Windows mit folgendem Algo:

Thread1: Takeinput1, mach Arbeit, benachrichtigeThread2, arbeite weiter. Thread2: Nimminput2, arbeite, warte auf die Benachrichtigung von Thread2, verarbeite etwas, benachrichtigeThread3, arbeite weiter. Thread3: Nimminput3, arbeite, warte auf die Benachrichtigung von Thread3, verarbeite etwas, benachrichtigeThread4, weiterarbeiten. etc.

Da ich C ++ -Neuling bin, bin ich mir nicht sicher, welchen Mechanismus ich zum Senden / Empfangen von Benachrichtigungen zwischen Threads auswählen soll.
Ich habe verschiedene Ansätze erwogen:mutex, semaphore, critical section, aber diese scheinen hauptsächlich zum Sperren, nicht zum Warten-Benachrichtigen.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage