2 回答
TA贡献1804条经验 获得超3个赞
起一个线程判断就可以了。
//记录上次关门时间戳,每次关门修改这个值
private static volatile long[] closeTime = new long[5];
static{
//初始化所有门
closeTime[0] = System.currentTimeMillis();
closeTime[1] = System.currentTimeMillis();
closeTime[2] = System.currentTimeMillis();
closeTime[3] = System.currentTimeMillis();
closeTime[4] = System.currentTimeMillis();
}
public static void main(String[] args) throws Exception {
new Thread(new Runnable() {
@Override
public void run() {
while(true){
for(int i = 0 ; i < 5 ; i ++){
if(System.currentTimeMillis() - closeTime[i] >= 1000*60*40){
//alarm ith door
}
}
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}).start();
}
添加回答
举报