События будут работать в этом случае:
- A создает событие и запускает процесс B
- A ожидает события, о котором будет сообщено
- B также создает событие, выполняет его первый элемент, затем сигнализирует о событии A (которое либо имеет хорошо известное имя, либо дескриптор может быть передан B, когда он запускается, либо с использованием какого-либо другого механизма
- B ждет своего события
- когда A возобновляет ожидание своего события, он выполняет свою работу, сигнализирует о событии B и ожидает самостоятельно
- и так далее ...
Просто убедитесь, что у вас есть обработка ошибок, чтобы каждый процесс мог возобновить работу и делать все необходимое, если другой зависает или неожиданно завершает работу. Тайм-ауты могут обработать ситуацию зависания, и ожидание на дескрипторе другого процесса (используя WaitForMultipleObjects () вместе с дескриптором процесса и события) может определить, завершится ли другой процесс.