TB策略单元重启问题
2023-09-22 14:59

老师好,最近策略单元重启问题测试了很多,一直没有解决问题,发现以下问题:

活跃合约:每秒都有tick反馈的合约,可以直接重启,代码如下:

If(CurrentTime==0.210000 And needRestart)

{

needRestart=False;

ReStart();

}

不活跃合约就出现了以下问题,10-20秒才有一个tick,出现新tick才更新时间,上面的程序就失效了,换下面这个程序同样不能实现不活跃合约单元重启问题:

if(TimeDiff(CurrentTime, 0.141000)==60)

{

ReStart();

}

又想了下面的办法,让这个时间判定变成时间段判定,这样一段时间内保证出现Tick就可以重启,单有新的问题,单元会重启到时间段结束,容易软件造成死机:

If(ABS(CurrentTime-0.231100)<0.000020 And needRestart)

{

needRestart=False;

ReStart();

}

请问老师,最后这个时间段重启的程序,有办法让他每天只重启一次嘛?或者重启一次后20个小时内不再触发这个判定重启的函数

评论区
lixiansheng001

老师,createtimer里面的systemdatetime要怎么写,怎么表达24小时,systemdatetime那里写成0.210000可不可以,还是要具体写日期?

2023-09-25 17:32
顶部