日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

java - 定時任務TimerTask沒有被全部成功執行

瀏覽:267日期:2023-10-22 17:15:22

問題描述

我這建立了一個TimerManager的類,目的是讓系統跑起來之后,執行相應的4個任務。但是,4個任務之中只有兩個被成功執行了,他們分別是timer和timer3,后面的兩個timer2和timer4并沒有被執行到。百思不得其解,所以來sf讓各位幫我看看是什么問題,下面是TimerManager的代碼:

public class TimerManager { @Resource RemoteControlController remoteControlController;@Resource ManagementStationService managementStationService; @Resource ControllerStatusController controllerStatusController; // 時間間隔 private static final long PERIOD_DAY = 24 * 60 * 60 * 1000; public static final long PERIOD_DAY2 = 60 * 60 * 1000; private static final long PERIOD_DAY3 = 60 * 60 * 1000; private static final int START_TIME = 1; private static final int START_TIME2 = 0; private Logger log = Logger.getLogger('ServerInfo'); public void initTimerManager() {Calendar calendar = Calendar.getInstance();Calendar calendar2 = Calendar.getInstance();/*** 定制每日1:00執行方法 ***/calendar.set(Calendar.HOUR_OF_DAY, START_TIME);calendar.set(Calendar.MINUTE, 0);calendar.set(Calendar.SECOND, 0);/*** 定制每日0:00執行方法 ***/calendar2.set(Calendar.HOUR_OF_DAY, START_TIME2);calendar2.set(Calendar.MINUTE, 0);calendar2.set(Calendar.SECOND, 0);Date date = calendar.getTime(); //第一次執行定時任務的時間 ,date重啟不執行Date date2 = calendar.getTime();//date2、3重啟執行Date date3 = calendar2.getTime();// 如果第一次執行定時任務的時間 小于 當前的時間// 此時要在第一次執行定時任務的時間加一天,以便此任務在下個時間點執行。如果不加一天,任務會立即執行。if (date.before(new Date())) { date = this.addDay(date, 1);}Timer timer = new Timer();Timer timer2 = new Timer();Timer timer3 = new Timer();Timer timer4 = new Timer();UpdateDailyEletricPowerTimerTask task = new UpdateDailyEletricPowerTimerTask();UpdateLampStatusTimerTask task2 = new UpdateLampStatusTimerTask();UpdateCurrentEletricDataTimerTask task3 = new UpdateCurrentEletricDataTimerTask();UpdateCurrentControllerStatusTimerTask task4 = new UpdateCurrentControllerStatusTimerTask();// 安排指定的任務在指定的時間開始進行重復的固定延遲執行。timer.schedule(task, date, PERIOD_DAY);timer3.schedule(task3, date3, PERIOD_DAY2);timer4.schedule(task4, date3, PERIOD_DAY3);//先更新路由狀態timer2.schedule(task2, date2, PERIOD_DAY);//再更新燈狀態 } // 增加或減少天數 public Date addDay(Date date, int num) {Calendar startDT = Calendar.getInstance();startDT.setTime(date);startDT.add(Calendar.DAY_OF_MONTH, num);return startDT.getTime(); }public class UpdateCurrentEletricDataTimerTask extends TimerTask {@Overridepublic void run() { try {// 在這里寫你要執行的內容/** * 查詢實時功率等數據 */log.info('-------------UpdateCurrentEletricDataTimerTask正在執行--------------');remoteControlController.currentElectricDataCollecting();log.info('-------------UpdateCurrentEletricDataTimerTask執行完畢--------------'); } catch (Exception e) {log.info('-------------UpdateCurrentEletricDataTimerTask解析信息發生異常--------------'); }} }

public class UpdateCurrentControllerStatusTimerTask extends TimerTask {@Overridepublic void run() { try {// 在這里寫你要執行的內容/** * 查詢實時功率等數據 */log.info('-------------UpdateCurrentControllerStatusTimerTask正在執行--------------');remoteControlController.readRouterStatus();log.info('-------------UpdateCurrentControllerStatusTimerTask執行完畢--------------'); } catch (Exception e) {log.info('-------------UpdateCurrentControllerStatusTimerTask解析信息發生異常--------------'); }} }public class UpdateDailyEletricPowerTimerTask extends TimerTask {@Overridepublic void run() { try {// 在這里寫你要執行的內容/** * 查詢前昨兩天日凍結正向有功總電量 */log.info('-------------UpdateDailyEletricPowerTimerTask正在執行--------------');remoteControlController.dailyPositiveElectricPowerCollecting();log.info('-------------UpdateDailyEletricPowerTimerTask執行完畢--------------'); } catch (Exception e) {log.info('-------------UpdateDailyEletricPowerTimerTask解析信息發生異常--------------'); }} }public class UpdateLampStatusTimerTask extends TimerTask {@Overridepublic void run() { try {// 在這里寫你要執行的內容/** * 更新全部燈具狀態 */log.info('-------------UpdateLampStatusTimerTask正在執行--------------');List<ManagementStation> mlist = managementStationService.getManagementStationList();int msize = mlist.size();log.info('**********UpdateLampStatusTimerTask獲取的管理所長度為'+msize);if(msize > 0){ String[] arr = new String[msize]; for(int i = 0; i < msize; i++)arr[i] = String.valueOf(mlist.get(i).getMid()); boolean realTime = false; controllerStatusController.UpdateControllerStatus(arr,realTime);}log.info('-------------UpdateLampStatusTimerTask執行完畢-------------'); } catch (Exception e) {log.info('-------------UpdateLampStatusTimerTask解析信息發生異常--------------'); }} }}

問題解答

回答1:

我沒用過 Timer,也不打算對如何調試這個程序提建議。我建議用 quartz 這樣的成熟框架來做這類事情。如果一定要自己設計的話,Timer 也不是最好的選擇,標準的思路應該是:

創建一個守護線程,管理每個定時任務的周期;

當一個定時任務執行時間到了,守護線程另開一個線程執行這個任務;

如果一個任務執行時間超過周期,則推遲下次執行時間到下一個周期。

標簽: java
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
激情久久久久久| 久久av国产紧身裤| 日韩欧美少妇| 黄色在线网站噜噜噜| 国产精品久久久久久久久久10秀| 老牛国内精品亚洲成av人片 | 9999国产精品| av免费不卡国产观看| 色在线视频观看| 久久婷婷一区| 亚洲免费成人| 午夜视频一区二区在线观看| 青青草91久久久久久久久| 国产精品亚洲产品| 成人在线视频中文字幕| 免费一二一二在线视频| 好吊日精品视频| 日本一不卡视频| 麻豆成人在线观看| 四虎4545www国产精品| 亚洲第一区色| 亚洲精品麻豆| 国产精品成人自拍| 日韩不卡在线| 六月天综合网| 国产精品成人一区二区网站软件| 97精品在线| 久久国产88| 国产精品视频一区视频二区| 中文字幕在线官网| 午夜久久一区| 欧美一区久久| 日韩欧美看国产| 免费在线视频一区| 精品伊人久久| 激情偷拍久久| 91精品福利观看| 三上悠亚国产精品一区二区三区| 午夜在线精品偷拍| 国产乱码精品一区二区三区四区| 中文字幕在线视频网站| av不卡在线| 国产美女亚洲精品7777| av最新在线| 日本欧美在线看| 精品一区二区三区在线观看视频| 999精品一区| 日本v片在线高清不卡在线观看| 久久av电影| 在线一区视频| 国产福利亚洲| 99在线观看免费视频精品观看| 青草国产精品久久久久久| 天堂√中文最新版在线| 亚洲欧美网站在线观看| 丝袜美腿诱惑一区二区三区| 亚洲另类黄色| 日韩免费高清| 日本不卡在线视频| 中文在线а√在线8| 亚洲人成在线影院| 婷婷综合六月| 国产日韩免费| 99在线精品视频在线观看| 欧美黑人巨大videos精品| 亚洲精品电影| 美腿丝袜亚洲三区| 在线亚洲免费| 成人欧美一区二区三区的电影| 亚洲精品在线国产| 久久久久午夜电影| 日韩成人在线看| 在线 亚洲欧美在线综合一区| 久久精品资源| 日韩一区中文| 黄色国产精品| 日本久久成人网| 国产高清精品二区| 免费精品视频最新在线| 日本不卡免费高清视频在线| 日韩精彩视频在线观看| 亚洲手机视频| 国产成年精品| 国产精品白丝久久av网站| 亚洲aⅴ网站| 日韩一级欧洲| 午夜av成人| 国产精品99一区二区三| 国产精品一卡| 日本亚洲三级在线| 日韩网站在线| 欧美搞黄网站| 成人羞羞在线观看网站| 久久免费福利| 国产精品资源| 亚洲色图网站| 亚洲欧洲日本mm| 99热精品久久| 亚洲va在线| 在线观看精品| 国产精品精品国产一区二区| 欧美国产不卡| 国产精品久久| 国产麻豆精品| 日本视频一区二区| 日韩综合一区二区三区| 亚洲另类黄色| 四虎国产精品免费久久| 亚洲区国产区| 亚洲ww精品| 亚洲精品日本| 一区二区三区午夜视频| 蜜臀av国产精品久久久久| 男人的天堂亚洲一区| 视频在线观看一区| 蜜臀av性久久久久蜜臀aⅴ流畅| 亚洲免费黄色| 影音先锋久久| 久久国产高清| 在线精品观看| 青青草视频一区| 国产精品亚洲四区在线观看| 青青青国产精品| 久久精品97| 久久不见久久见免费视频7 | 亚洲一卡久久| 黄色成人在线网址| 国产精品毛片一区二区三区| 亚洲在线网站| 深夜日韩欧美| 18国产精品| 久久av免费看| 欧美日韩在线观看首页| 日韩伦理福利| 99热国内精品| 99精品99| 少妇精品在线| 国产精品22p| 国产91在线播放精品| 成人国产综合| 捆绑调教日本一区二区三区| 久久蜜桃精品| 久久国产精品99国产| 日韩欧美高清一区二区三区| 国产精品一卡| 日韩免费av| 亚洲综合二区| 国产日韩视频| 日韩欧美一区免费| 午夜精品婷婷| 五月激激激综合网色播 | 日韩一区二区三区免费视频| 国产毛片一区二区三区| 久久99国产精品视频| 欧美日韩精品一区二区视频| 爽好久久久欧美精品| 国产亚洲字幕| 亚洲精品**中文毛片| 夜久久久久久| 国产无遮挡裸体免费久久| 福利欧美精品在线| 日韩视频在线一区二区三区| 日韩激情一二三区| 久久伊人久久| 亚洲激情av| 国产另类在线| 婷婷亚洲五月| 91成人在线| 精品国产成人| 99在线观看免费视频精品观看| 日韩av成人高清| 香蕉视频亚洲一级| 天堂俺去俺来也www久久婷婷| 国产激情在线播放| 中文字幕日韩高清在线 | 久久精品天堂| 好吊日精品视频| 国产精品巨作av| 欧美日韩水蜜桃| 欧美三级第一页| 99视频精品全国免费| 91欧美精品| 久久精品亚洲人成影院 | 日韩av一区二区在线影视| 日韩av自拍| 午夜电影一区| 91精品蜜臀一区二区三区在线| 日日夜夜免费精品视频| 欧美日韩尤物久久| 国产乱论精品| 免费久久99精品国产自在现线| 精品一区二区三区的国产在线观看| 欧美大黑bbbbbbbbb在线| 国产精品夜夜夜| 亚洲欧美日韩国产一区| 美女久久久久久| 中文欧美日韩| 97精品97| 欧美日韩亚洲三区| 国产亚洲欧洲|