欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

ScheduledExecutorService任務定時代碼示例

 更新時間:2018年01月10日 15:46:57   作者:yanweiqi  
這篇文章主要介紹了ScheduledExecutorService任務定時代碼示例,具有一定借鑒價值,需要的朋友可以參考下

本文主要分享了一則關于ScheduledExecutorService任務定時的實例代碼,具體如下:

示例代碼

package com.effective.common.concurrent.execute;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;
public class Schedule {
	private static DateFormat dateFormat = new SimpleDateFormat("yy-MM-dd HH:mm:ss");
	private static DateFormat dayFormat = new SimpleDateFormat("yy-MM-dd");
	private static ScheduledExecutorService excutor = Executors.newSingleThreadScheduledExecutor();
	/**
   * 按指定頻率周期執(zhí)行某個任務 <br>
   * 初始化延遲0ms開始執(zhí)行,每隔5ms重新執(zhí)行一次任務。
   */
	public void fixedRate(){
		excutor.scheduleAtFixedRate(new EchoServer(), //執(zhí)行線程
		0, //初始化延遲
		5000, //兩次開始的執(zhí)行的最小時間間隔
		TimeUnit.MILLISECONDS //計時單位
		);
	}
	/**
   * 
   */
	public void fixDelay(){
		excutor.scheduleWithFixedDelay(new EchoServer(),//執(zhí)行線程 
		0, //初始化延遲
		5000, //前一次執(zhí)行結束到下一次執(zhí)行開始的間隔時間
		TimeUnit.MILLISECONDS);
	}
	/**
   * 每天晚上8點執(zhí)行一次
   */
	public void dayOfDelay(String time){
		ScheduledExecutorService executor = Executors.newScheduledThreadPool(1);
		long oneDay = 24 * 60 * 60 * 1000;
		long initDelay = getTimeMillis("20:00:00") - System.currentTimeMillis();
		initDelay = initDelay > 0 ? initDelay : oneDay + initDelay;
		executor.scheduleAtFixedRate( 
		        new EchoServer(), 
		        initDelay, 
		        oneDay, 
		        TimeUnit.MILLISECONDS);
	}
	/**
   * 獲取給定時間對應的毫秒數
   * @param string "HH:mm:ss"
   * @return
   */
	private static long getTimeMillis(String time) {
		try {
			Date currentDate = dateFormat.parse(dayFormat.format(new Date()) + " " +time);
			return currentDate.getTime() ;
		}
		catch (ParseException e) {
			e.printStackTrace();
		}
		return 0;
	}
	public static void main(String[] args){
		Schedule schedule = new Schedule();
		schedule.fixedRate();
		schedule.fixDelay();
	}
}

總結

以上就是本文關于ScheduledExecutorService任務定時代碼示例的全部內容,希望對大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站其他相關專題,如有不足之處,歡迎留言指出。感謝朋友們對本站的支持!

相關文章

  • Java設計模式探究之觀察者模式詳解

    Java設計模式探究之觀察者模式詳解

    這篇文章主要為大家詳細介紹了JAVA的觀察者模式,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-08-08
  • java算法之Math.random()隨機概率玩法實例演示

    java算法之Math.random()隨機概率玩法實例演示

    最近打算整理排序算法,發(fā)現(xiàn)很有必要準備一下生成隨機數的工具類,下面這篇文章主要給大家介紹了關于java算法之Math.random()隨機概率玩法的相關資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2023-05-05
  • 詳解java中Reference的實現(xiàn)與相應的執(zhí)行過程

    詳解java中Reference的實現(xiàn)與相應的執(zhí)行過程

    不知道大家知不知道特殊的reference對象都是被jvm專門處理的,所以這篇文章就相應的工作流程和referencequeue之間的協(xié)作進行梳理.有需要的朋友們可以參考借鑒。
    2016-09-09
  • Java常用類庫StringBuffer,Runtime,日期操作類等類庫總結

    Java常用類庫StringBuffer,Runtime,日期操作類等類庫總結

    這篇文章主要介紹了Java常用類庫StringBuffer,Runtime,日期操作類等類庫總結,需要的朋友可以參考下
    2020-02-02
  • 一文理清什么是BIO以及如何使用

    一文理清什么是BIO以及如何使用

    這篇文章主要介紹了什么是BIO以及如何使用,BIO英文全名是blockingIO,也叫做阻塞IO,是最容易理解、最容易實現(xiàn)的IO工作方式,本文就來通過一些簡單的示例為大家講講BIO吧,需要的朋友可以參考下
    2023-10-10
  • Java編碼摘要算法實例解析

    Java編碼摘要算法實例解析

    這篇文章主要介紹了Java編碼摘要算法實例解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-01-01
  • MyBatisPlus分頁時排序的實現(xiàn)

    MyBatisPlus分頁時排序的實現(xiàn)

    本文主要介紹了MyBatisPlus分頁時排序的實現(xiàn),文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • 圖文詳解java內存回收機制

    圖文詳解java內存回收機制

    這篇文章主要以圖文結合的方式為大家詳細介紹了java內存回收機制,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-10-10
  • linux重啟java服務的腳本

    linux重啟java服務的腳本

    這篇文章主要介紹了linux重啟java服務的腳本,本文分步驟通過shell腳本給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-07-07
  • java制作專屬智能陪聊機器人詳解

    java制作專屬智能陪聊機器人詳解

    人工智能一直是最近的熱點話題,,這篇文章主要為大家詳細介紹了java實現(xiàn)智能陪聊機器人,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-11-11

最新評論