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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java 定时器框架_java定时器

發(fā)布時(shí)間:2024/7/5 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java 定时器框架_java定时器 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

java定時(shí)器

什么是Java定時(shí)器?

Java 定時(shí)器就是在給定的間隔時(shí)間執(zhí)行自己的任務(wù); Java實(shí)現(xiàn)定時(shí)器有以下幾種:

通過Timer來實(shí)現(xiàn)定時(shí)任務(wù)

Timer 是來自 java.util.Timer

指定時(shí)間執(zhí)行任務(wù)

/**

* @author spp

* @date 2020-10-14 09:04

**/

public class TimerTest {

public static void main(String[] args) {

Timer timer = new Timer();

timer.schedule(new TimerTask() {

public void run() {

System.out.println("任務(wù)執(zhí)行:" + System.currentTimeMillis());

}

}, 5000);

System.out.println("任務(wù)開始:"+System.currentTimeMillis());

//取消任務(wù)

//timer.cancel();

}

}

結(jié)果

延后執(zhí)行,隨后以固定時(shí)間執(zhí)行任務(wù)

/**

* @author spp

* @date 2020-10-14 09:04

**/

public class TimerTest {

public static void main(String[] args) {

Timer timer = new Timer();

//同scheduleAtFixedRate

timer.schedule(new TimerTask() {

public void run() {

System.out.println("任務(wù)執(zhí)行:" + System.currentTimeMillis());

}

}, 5000,1000); //延遲5秒執(zhí)行,隨后每一秒執(zhí)行一次

System.out.println("任務(wù)開始:"+System.currentTimeMillis());

//取消任務(wù)

//timer.cancel();

}

}

結(jié)果

任務(wù)開始:1602638067502

任務(wù)執(zhí)行:1602638072502

任務(wù)執(zhí)行:1602638073502

任務(wù)執(zhí)行:1602638074503

任務(wù)執(zhí)行:1602638075503

任務(wù)執(zhí)行:1602638076503

任務(wù)執(zhí)行:1602638077503

通過線程池ScheduledExecutorService

指定時(shí)間執(zhí)行任務(wù)

public static void main(String[] args) {

//通過線程池ScheduledExecutorService

ScheduledExecutorService scheduledExecutorService = Executors.newScheduledThreadPool(1);

scheduledExecutorService.schedule(()->{

System.out.println("任務(wù)執(zhí)行:" + System.currentTimeMillis());

},1000, TimeUnit.MILLISECONDS); //參數(shù)說明:第一個(gè)執(zhí)行的任務(wù);第二個(gè)推遲的時(shí)間;第三個(gè)時(shí)間單位

System.out.println("任務(wù)開始:"+System.currentTimeMillis());

}

結(jié)果

任務(wù)開始:1602638536832

任務(wù)執(zhí)行:1602638537833

執(zhí)行固定定時(shí)任務(wù)

public static void main(String[] args) {

//通過線程池ScheduledExecutorService

ScheduledExecutorService scheduledExecutorService = Executors.newScheduledThreadPool(1);

scheduledExecutorService.scheduleWithFixedDelay(()->{

System.out.println("任務(wù)執(zhí)行:" + System.currentTimeMillis());

},2000, 1000,TimeUnit.MILLISECONDS); //參數(shù)說明:第一個(gè)執(zhí)行的任務(wù);第二個(gè)首次執(zhí)行推遲的時(shí)間;第三個(gè)隨后執(zhí)行的推遲時(shí)間;第四個(gè)時(shí)間單位

System.out.println("任務(wù)開始:"+System.currentTimeMillis());

}

結(jié)果

任務(wù)開始:1602638655640

任務(wù)執(zhí)行:1602638657641

任務(wù)執(zhí)行:1602638658643

任務(wù)執(zhí)行:1602638659645

定時(shí)器框架

Spring Task

QuartZ

有的時(shí)候Java代碼定時(shí)任務(wù)也會(huì)讓Linux上執(zhí)行,也就是 Linux Cron

轉(zhuǎn)自:

總結(jié)

以上是生活随笔為你收集整理的java 定时器框架_java定时器的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。