Одна из особенностей этой оси - в ней есть системный процесс сторожевого таймера.
Соответственно, в каждом процессе создается таймер, по сигналу от которого процесс "пинает" сторожевой таймер. Этот сигнал вместе со всеми остальными мониторится в теле процесса.
Собственно, я не могу решить, как следует поступать, если в процессе вызывается функция, время выполнения которой может оказаться больше периода сторожевого таймера.
Что мне приходит в голову:
1. Увеличить период стор. таймера - непонятно на сколько, т.к. время выполнения функции неизвестно;
2. Отслеживать сигнал таймера процесса и "пинать" стор. таймер в этой долгой функции - как-то некрасиво и возможность такого решения зависит от алгоритма самой функции (есть в этой функции "суперлуп" или нет);
3. Отключать сторожевой таймер для данного процесса перед вызовом функции и включать после возврата (в ОС такие функции предусмотрены) - почему-то тоже не нравится

В общем, все три варианта мне не нравятся. Посему прошу вашего совета и других идей.
Может я вообще велосипед изобретаю и уже все давно придумано?