这是我的代码:
setTimer(delay, (SEEDKEY_MAXTRY * SEEDKEY_FREQ) + (LOGIN_MAXTRY * LOGIN_FREQ));
do {
// waits, until all operations have been executed;
} while(isTimerActive(delay));
我确切地知道执行命令需要多长时间,因此我将计时器delay
设置为显式值。我必须等待,直到我返回一些值。
模拟在这一点上停滞不前,我的面板进入了Windows - "没有响应"我可以通过Taskmanager结束模拟的唯一方法。
我认为唯一的解释是,当我在do ... while
语句中时,计时器需要更多时间,或者根本不执行。 (与while {})相同
有人能证实这个想法,或者通过给我解决问题来证明我的错误吗?
答案 0 :(得分:1)
好的我总能找到一种解决方法,因为CAPL在stackoverflow上并不太受欢迎......
对于读者来说,想知道如何:
我刚刚使用全局状态变量来限制用户执行操作,直到我的处理完成。