【发布时间】:2021-01-25 14:30:18
【问题描述】:
我创建了一个需要在 Java 驱动的 PLC 上运行的状态机。我想像现在一样以 250 毫秒的间隔检查/运行代码。唯一的问题是,在某些州,我实施了延迟。 所以我想要的是该延迟(例如 1 秒延迟)首先完成,然后 250 毫秒间隔计时器可以再次继续。您将如何执行此操作/如何中断 250 毫秒计时器,直到代码完成执行?
public class demoClass{
public void main(){
Timer t = new Timer();
t.schedule(new TimerTask() {
@Override
public void run() {
switch (StateMachine()) { //statemachine determines logic between states
case s10_StandBy:
doSomething_1();
break;
case s20_NormalStartOrFlush:
doSomething_2();
break;
}
}
}, 0, 250);
}
public void doSomething_1(){
// for example a one second delay is implemented here
}
}
}
【问题讨论】:
标签: java timer delay interrupt