Здравствуйте! Подскажите пожалуйста, как сделать так, чтобы функции f15() и f60() вызывались каждые 15 и 60 секунд соответственно? Может так, например: if(Ттек.с-Тстар.с>15) f15(). Думаю необходимо учитывать то, что функции могут выполняться достаточно долго.int main()
{
for(;;)
{
//if(Tcurr.s-Told.s>15)
f15();
//if(Tcurr.s-Told.s>60)
f60();
}
return 0;
}
>Здравствуйте! Подскажите пожалуйста, как сделать так, чтобы функции f15() и f60() вызывались каждые 15 и 60 секунд соответственно?Может быть так?
int count = 0;
for ( ;; ) {
f15();
if (count == 4) {
f60();
count = 0;
} else {
count++;
}
}> Думаю необходимо учитывать то, что функции могут выполняться достаточно долго.
Можно попробовать статическую переменную внутри ф-ции или что-нить с мутексами уже замутить.
>[оверквотинг удален]
> count = 0;
> } else {
> count++;
> }
>}
>
>> Думаю необходимо учитывать то, что функции могут выполняться достаточно долго.
>
>Можно попробовать статическую переменную внутри ф-ции или что-нить с мутексами уже замутить.
>Спасибо! Только в вашем примере, наверно необходимо делать задержку (sleep), т.к. частота выполения for(;;) будет зависит от частоты ЦП.
>Спасибо! Только в вашем примере, наверно необходимо делать задержку (sleep), т.к. частота
>выполения for(;;) будет зависит от частоты ЦП.Да, забыл sleep 15 добавить.
man 2 alarm