Необходимо отследить изменение глобальной переменной как можно быстрее и точнее. Использовать Кларион-таймер нельзя. Хотелось бы использовать что то вроде WaitForSingleObject - не знаю аналога для этого случая (может его и нет).
Ситуация:
1. Открывается фрэйм GLO:MyVar=MyFunc()
2. Открываются дочерние окна. В связи с некоторыми событиями в дочерних окнах значение возвращаемое MyFunc() изменяется. Событий достаточно много, т.е. на каждое вешать проверку не имеет смысла.
3. Необходимо проверить изменилось ли значение возвращаемое MyFunc(), если GLO:MyVar<>MyFunc(), то GLO:MyVar=MyFunc() и выполняем MyRefresh().
Как решение: было предложено использовать API таймер (SetTimer,KillTimer), проблема в том, что я не знаю как его остановить на время выполнения MyRefresh(). Насколько я понимаю останавливать таймер (по KillTimer) в callback нельзя. Значение таймера минимально ("1" например). Устанавливать большое значение таймера на время выполнения "некрасиво"

Вопросы:
1. можно ли остановить API-таймер
2. есть ли другой вариант отслеживания изменения
Спасибо.
____________
PAA aka StillZero
Написал: PAA(27)