日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【java】定时器

發布時間:2025/6/17 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【java】定时器 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?

總結

1、執行計劃的任務放在TimerTask的子類中,由Timer進行該任務。

2、創建一個Timer就是啟動一個新的線程,直至Timer里的任務執行完畢,才會結束。希望創建的線程為守護線程,則創建時需設置Timer timer=new Timer(true);

3、執行任務的時間早于當前時間,任務會立即執行。

4、TimerTask是以隊列的方式一個個順序執行的。當前面的任務消耗時間較長,則后面的任務運行的時間也會延后。

比如,假定Task1執行需2s,Task2在Task1開始之后1s需被執行。結果是執行完Task1后,立即執行Task2。(實際也符合第3點)

5、如果沒有延遲,則執行任務的時間是上一次任務開始的時間加上poried的時間。如果延遲了,則執行任務的時間為上一個任務的結束時間。(補充第4條)

6、方法schedule和scheduleAtFixedRate的區別在于后者有追趕執行性。(下面由代碼解釋)

7、異常方面。如果timer中執行任務時發生異常,則結束該timer線程,不會在執行任何任務。

?

常用例子

1、示例

import java.util.Calendar; import java.util.Date; import java.util.Timer; import java.util.TimerTask; /*** Created by zay on 2016/12/8.*/public class TimerTest {public static void main(String[] args) {System.out.println("當前時間:"+new Date());//執行計劃的任務放在TimerTask的子類中,由Timer進行該任務。Timer timer = new Timer();//創建一個任務,1s后開始執行,并此后每隔2s執行。timer.schedule(new TimerTask() {@Overridepublic void run() {System.out.println(new Date() + "任務一");}},1000,2000);//創建一個任務,十天后執行。Calendar calendar = Calendar.getInstance();calendar.add(Calendar.DATE,1);Date runDate = calendar.getTime();timer.schedule(new TimerTask() {@Overridepublic void run() {System.out.println(new Date() + "任務二");}},runDate);//timer.cancel(); 調用TImer的cancel()方法會清空該TImer的所有任務。//timerTask.cancel(); 調用TImerTask的cancel()方法則會在TImer中取消該任務。 } }

?2、方法schedule和scheduleAtFixedRate的區別在于后者有追趕執行性。

import java.util.Calendar; import java.util.Date; import java.util.Timer; import java.util.TimerTask;/*** Created by zay on 2016/12/8.*/ public class TimerTest {public static void main(String[] args) {System.out.println("當前時間:"+new Date());Calendar calendar=Calendar.getInstance();calendar.add(Calendar.SECOND,-100); //設置一個比較早的時間Date earlyDate = calendar.getTime();Timer timer = new Timer();System.out.printf(new Date() + " 現在開始執行任務");timer.scheduleAtFixedRate(new TimerTask() {@Overridepublic void run() {System.out.println(new Date() + " 任務一");}},earlyDate,5000);/*timer.schedule(new TimerTask() {@Overridepublic void run() {System.out.println(new Date() + " 任務一");}},earlyDate,5000);*/} }

?

// schedule方法的輸出(注意比對執行任務的時間) ? ? ? ? ? ? ? ?//scheduleAtFixedRate方法的輸出

? ? ?

解釋:當執行任務的時間早于當前時間時,比如示例中,執行任務的時間早于當前任務100s,那么這段時間理論應該有的任務怎么處理呢?

schedule選擇拋棄不理,以當前的時間為新的起點,而scheduleAtFiexdRate則會一口氣將這些任務順序都執行完畢。

?

轉載于:https://www.cnblogs.com/zadomn0920/p/java.html

總結

以上是生活随笔為你收集整理的【java】定时器的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 一级淫片免费 | 国产精品美女一区 | 调教小屁屁白丝丨vk | 中国丰满老妇xxxxx交性 | 97超碰资源总站 | 村姑电影在线播放免费观看 | 国产视频精品自拍 | 中文字幕日韩久久 | 1024国产精品| 日韩性网站 | 日本美女一级视频 | 国产精品二区一区二区aⅴ 一卡二卡三卡在线观看 | 国产真人无码作爱视频免费 | 欧美激情一二区 | 自拍偷拍亚洲视频 | 在线观看黄色片网站 | 亚洲伦理在线 | 国产视频精品免费 | www麻豆视频 | 韩国三级hd中文字幕的背景音乐 | 日韩欧美不卡 | julia一区| 精品国产系列 | 日本边添边摸边做边爱 | 国产精品久久777777 | 四虎在线视频免费观看 | 国产毛片一区二区 | 美日韩av| 久久国产视频播放 | 久艹在线播放 | 欧美激情在线观看视频 | 久久久久亚洲av无码专区桃色 | 国产在线激情 | 色呦呦免费 | 婷婷在线网 | 欧美午夜精品久久久久久蜜 | 亚洲国产精品无码观看久久 | 丰满少妇一区二区三区视频 | 狠狠躁夜夜躁人人爽视频 | 在线观看 中文字幕 | 深夜视频一区二区三区 | 日本一区视频在线观看 | 91麻豆精品国产91久久久久久久久 | 91在线导航 | 日日噜噜噜噜久久久精品毛片 | 偷拍亚洲综合 | 狂野欧美性猛交免费视频 | 成人福利一区二区三区 | 少妇高潮一区二区三区99刮毛 | 夜夜高潮夜夜爽 | 91精品在线免费观看 | 先锋影音av资源网站 | 国产又粗又黄又爽的视频 | 日韩av在线免费看 | 麻豆av影院 | 色播日韩| 国产又粗又黄又爽视频 | 免费观看一区 | 69久久久久久| 在线观看免费视频一区二区 | 噜噜噜久久,亚洲精品国产品 | 成人无高清96免费 | 美腿丝袜亚洲综合 | 爆乳2把你榨干哦ova在线观看 | 成人乱码一区二区三区av | 亚洲国产精品电影 | www.88av| 日本黄色激情视频 | 最新最近中文字幕 | 日本网站免费 | 四虎成人精品在永久免费 | 亚洲视频一区二区三区四区 | 欧美日韩国产大片 | 国产这里只有精品 | 亚洲青春草 | 蜜桃视频无码区在线观看 | 久久精品99国产精品日本 | 国产成人综合精品 | 视频在线观看你懂的 | a中文在线 | 免费日本黄色网址 | 成人在线视频免费播放 | 成人激情四射 | 伊人激情综合网 | 成人免费一区 | 黄色特级毛片 | 天天综合精品 | 欧美一区二区三区成人片在线 | 一区二区三区中文视频 | 亚洲精品欧美日韩 | 国产美女自慰在线观看 | 国产天堂网 | 中文字幕女同女同女同 | 日本韩国欧美一区二区 | 久久观看最新视频 | 久草免费福利 | 操操操视频 | 国产三级按摩推拿按摩 | 精品无码久久久久久久 |