java - Java获取2个日期之间的秒数
问题描述
我正在尝试每 10 秒发送一次数据,所以我正在尝试使用我编写的这段代码,但我认为我在转换为秒时出错了?
Calendar Time= Calendar.getInstance();
Calendar SendDate= Calendar.getInstance();
long upload = TimeBetweenDates(SendTime,Time);
if (upload > 10000) {
String udp = "OK";
SendUDP(udp);
SendTime = Calendar.getInstance();
}
public static long TimeBetweenDates (Calendar Start , Calendar End) {
long end = End.getTimeInMillis();
long start = Start.getTimeInMillis();
return TimeUnit.MILLISECONDS.toSeconds(Math.abs(end - start));
}
解决方案
如果您“尝试每 10 秒发送一次数据”,您可以这样做
ScheduledExecutorService service = Executors.newScheduledThreadPool();
service.scheduleAtFixedRate(() -> sendUdp("OK"), 10, 10, TimeUnit.SECONDS);
推荐阅读
- r - tfdatasets上的R keras模型,重复列
- gcc - MinGW32 无法配置源:“未定义对‘信号’等的引用
- java - 如何在JAVA中将多个sideinputs传递和引用到DoFn
- python - 如何在 sparql 中查询多个图?
- watchkit - 单击按钮时如何打开 Apple Watch 设置?
- powershell - 使用 PNP Powershell 更新 SharePoint Online 文档库中特定文件夹中项目的元数据属性
- thingsboard - 我可以在 thingsboard 上的实体管理表中有遥测数据吗
- haskell - 使用复杂类型参数强制记录的问题
- c# - 在 C# 中将应用程序作为子进程启动时控制台输出丢失
- c# - BlazorWebView 当前文化