dj4400 Ответов: 1

Конвертируйте приложение на основе таймера. В случае приложение. В C++


Привет

У меня есть приложение. который работает с таймером windows в c++

я хочу использовать его в качестве ведомого устройства в другом приложении, но главное приложение является последовательным.

В главном приложении. мы заявляем, что 1 секунда прошла после завершения всех необходимых действий.

расчеты (фактическое время может быть намного меньше или намного больше)

В ведомом приложении есть реальный таймер, продолжительность которого составляет 1 секунду
То, что я хочу сделать, находится в главном приложении. когда он решил, что 1 секунда прошла, он должен отправить какое-то событие ведомому устройству, которое заставит его таймер достичь своей продолжительности и активировать обратный вызов таймера

Приложения взаимодействуют через UDP

Спасибо!

Что я уже пробовал:

Некоторые возятся с SetWaitableTime но безрезультатно

1 Ответов

Рейтинг:
2

Jochen Arndt

В чем же проблема?

У вас уже есть IPC (Inter Process Communication). Пусть ведущий посылает определенный пакет ведомому устройству, которое затем действует соответствующим образом (вызывает функцию обратного вызова и при необходимости останавливает или перезапускает таймер). Реализация пакета называется протокол.


dj4400

Проблема в том, что и ведущий, и ведомый выполняют действия, основанные на времени
Когда проходит определенный период времени, то ведущий посылает пакет, а когда проходит другой период времени, ведомый посылает пакет. То, что я хочу, это не зависеть от времени, а работать как можно быстрее - когда мастер закончит свои вычисления и сможет отправить пакет, я хочу, чтобы он отправил пакет, и время как для мастера, так и для ведомого будет таким, как если бы необходимый период времени прошел

Jochen Arndt

Все, что вам нужно, - это останавливаемые таймеры и события, которые их останавливают.