檢測一個(gè)JAVA程序的運(yùn)行時(shí)間方法: long startTime = System.currentTimeMillis();//獲取當(dāng)前時(shí)間//doSomeThing(); //要運(yùn)行的java程序long endTime = System.currentTimeMillis();System.out.println("程序運(yùn)行時(shí)間:"+(endTime-startTime)+"ms");
創(chuàng)新互聯(lián)建站專注于陽春網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠為您提供陽春營銷型網(wǎng)站建設(shè),陽春網(wǎng)站制作、陽春網(wǎng)頁設(shè)計(jì)、陽春網(wǎng)站官網(wǎng)定制、小程序設(shè)計(jì)服務(wù),打造陽春網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供陽春網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。
import java.util.Calendar; \x0d\x0aimport java.util.Date; \x0d\x0aimport java.util.Timer; \x0d\x0aimport java.util.TimerTask; \x0d\x0a \x0d\x0apublic class Test { \x0d\x0a public static void main(String[] args) { \x0d\x0a //timer1(); \x0d\x0a timer2(); \x0d\x0a //timer3(); \x0d\x0a //timer4(); \x0d\x0a } \x0d\x0a \x0d\x0a // 第一種方法:設(shè)定指定任務(wù)task在指定時(shí)間time執(zhí)行 schedule(TimerTask task, Date time) \x0d\x0a public static void timer1() { \x0d\x0a Timer timer = new Timer(); \x0d\x0a timer.schedule(new TimerTask() { \x0d\x0a public void run() { \x0d\x0a System.out.println("-------設(shè)定要指定任務(wù)--------"); \x0d\x0a } \x0d\x0a }, 2000);// 設(shè)定指定的時(shí)間time,此處為2000毫秒 \x0d\x0a } \x0d\x0a \x0d\x0a // 第二種方法:設(shè)定指定任務(wù)task在指定延遲delay后進(jìn)行固定延遲peroid的執(zhí)行 \x0d\x0a // schedule(TimerTask task, long delay, long period) \x0d\x0a public static void timer2() { \x0d\x0a Timer timer = new Timer(); \x0d\x0a timer.schedule(new TimerTask() { \x0d\x0a public void run() { \x0d\x0a System.out.println("-------設(shè)定要指定任務(wù)--------"); \x0d\x0a } \x0d\x0a }, 1000, 1000); \x0d\x0a } \x0d\x0a \x0d\x0a // 第三種方法:設(shè)定指定任務(wù)task在指定延遲delay后進(jìn)行固定頻率peroid的執(zhí)行。 \x0d\x0a // scheduleAtFixedRate(TimerTask task, long delay, long period) \x0d\x0a public static void timer3() { \x0d\x0a Timer timer = new Timer(); \x0d\x0a timer.scheduleAtFixedRate(new TimerTask() { \x0d\x0a public void run() { \x0d\x0a System.out.println("-------設(shè)定要指定任務(wù)--------"); \x0d\x0a } \x0d\x0a }, 1000, 2000); \x0d\x0a } \x0d\x0a \x0d\x0a // 第四種方法:安排指定的任務(wù)task在指定的時(shí)間firstTime開始進(jìn)行重復(fù)的固定速率period執(zhí)行. \x0d\x0a // Timer.scheduleAtFixedRate(TimerTask task,Date firstTime,long period) \x0d\x0a public static void timer4() { \x0d\x0a Calendar calendar = Calendar.getInstance(); \x0d\x0a calendar.set(Calendar.HOUR_OF_DAY, 12); // 控制時(shí) \x0d\x0a calendar.set(Calendar.MINUTE, 0); // 控制分 \x0d\x0a calendar.set(Calendar.SECOND, 0); // 控制秒 \x0d\x0a \x0d\x0a Date time = calendar.getTime(); // 得出執(zhí)行任務(wù)的時(shí)間,此處為今天的12:00:00 \x0d\x0a \x0d\x0a Timer timer = new Timer(); \x0d\x0a timer.scheduleAtFixedRate(new TimerTask() { \x0d\x0a public void run() { \x0d\x0a System.out.println("-------設(shè)定要指定任務(wù)--------"); \x0d\x0a } \x0d\x0a }, time, 1000 * 60 * 60 * 24);// 這里設(shè)定將延時(shí)每天固定執(zhí)行 \x0d\x0a } \x0d\x0a}
用Timer可以實(shí)現(xiàn)~~
Timer的schedule方法可以指定第一次運(yùn)行的時(shí)刻,和重復(fù)間隔
具體可以參考API
timer.schedule(task, firstTime, period)
指定firstTime為21:00:00,period為一天的毫秒數(shù)24*3600*1000就成了。。
或者可以自己寫個(gè)線程,放個(gè)while循環(huán),每分鐘檢查一次,如果到時(shí)間了就執(zhí)行任務(wù),如果沒到就sleep一分鐘。。當(dāng)然,這種方法比較土。。
更復(fù)雜點(diǎn)的可以借助現(xiàn)有的包,比如quartz,有興趣可以研究下~~
java獲取應(yīng)用的運(yùn)行時(shí)間,可以利用時(shí)間差來獲得,使用System.currentTimeMillis()該方法獲得此時(shí)的時(shí)間,代碼如下:
package?com.qiu.lin.he;
import?java.text.ParseException;
public?class?Ceshi?{
public?static?void?main(String[]?args)?throws?ParseException?{
double?begin?=?System.currentTimeMillis();?//?程序開始時(shí)間,調(diào)用系統(tǒng)的當(dāng)前時(shí)間
for?(int?i?=?0;?i??10000;?i++)?{
//?這里執(zhí)行具體的業(yè)務(wù)邏輯
System.out.println(i);
}
//?你要運(yùn)行的程序
double?end?=?System.currentTimeMillis();?//?程序結(jié)束時(shí)間,調(diào)用系統(tǒng)當(dāng)前時(shí)間
double?time?=?end?-?begin;//?程序的運(yùn)行時(shí)間
System.out.println(time?/?60?+?"秒");
}
}
運(yùn)行結(jié)果如下:
網(wǎng)頁題目:如何java運(yùn)行代碼時(shí)間 java代碼怎么運(yùn)行
分享網(wǎng)址:http://www.rwnh.cn/article40/doshieo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站改版、外貿(mào)建站、關(guān)鍵詞優(yōu)化、全網(wǎng)營銷推廣、網(wǎng)站設(shè)計(jì)公司、網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)