Приветствие !!
Следующий код работает нормально .... по крайней мере более одной секунды будет выполнять функцию expx в функции Getexp, я вызывал Getexp каждые 0,01 секунды 100 раз, на самом деле функция expx будетвызывается только один раз, это то, что я хочу !!
Но мой пользователь должен перейти как минимум на 0,5 секунды для вызова expx, поскольку следующий код работает в tick1, tick2 в целочисленном типе,Мне нужен совет, чтобы изменить не слишком много приведенных ниже кодов, и это удовлетворит потребности пользователей ....
Какая функция лучше всего подойдет для моего случая?time_t не будет работать для меня в случае 0,5 с!
double Getexp(double valuex)
{
double wgt=0.9 ;
static double value_t0=0.0 ;
static double value_t1=0.0 ;
double dret = 0.0 ;
static time_t tick1=0 ,tick2=0 ;
if(value_t0 < 0.0001)
{
tick1=time(NULL);
tick2=tick1 ;
value_t0 = valuex ;
value_t1 = valuex ;
dret = expx(value_t1,value_t0,wgt) ;
value_t0 = dret ;
return value_t0 ;
}
tick2=time(NULL);
if(tick2 > tick1)
{
tick1 = tick2 ;
value_t1 = valuex ;
dret = expx(value_t1,value_t0,wgt) ;
value_t0 = dret ;
return value_t0 ;
}else
{
return value_t0 ;
}
}