我的应用程序中有一个名为符号的表格,每隔 8 分钟会持续更新
符号表中的每条记录都有一个名称为 updated-at 的属性,其值为时间戳,如图所示
"updated_at" : NumberLong("1375715967249")
我有一项任务是从符号表
向用户显示更新的数据如果符号未更新9分钟,我需要执行特定任务并更新其他任务
我遵循这个逻辑,请告诉我这是否有任何循环漏洞? (我的意思是喜欢日常设置---或任何此类)
package com;
public class UnixTimeConversion {
public static void main(String args[]) {
long timeStamp = 1375715967249l;
java.util.Date date = new java.util.Date();
long currtime = date.getTime();
if ((currtime - timeStamp) > 600000) {
System.out.println("Greater than 10 minutes since executed");
} else {
System.out.println("Lesser than 10 minutes since executed");
}
}
}
答案 0 :(得分:1)
UNIX时间戳不关心时区,UTC闰秒或其他任何内容。它只是一个线性测量时间流逝的数字。如果你不关心挂钟时间,也没问题。您只需要注意以正确的方式将源材料转换为UNIX时间戳。
答案 1 :(得分:1)
最好以这种方式尝试
long timeStamp = 1375715967249l;
long currTime = System.currentTimeMillis();
if ((currTime - timeStamp) > 10*60*1000) {
System.out.println("Greater than 10 minutes since executed");
} else {
System.out.println("Lesser than 10 minutes since executed");
}
10min = 10 * 60 * 1000 ms