bl双性强迫侵犯h_国产在线观看人成激情视频_蜜芽188_被诱拐的少孩全彩啪啪漫画

監(jiān)控java代碼執(zhí)行時(shí)間 監(jiān)控java代碼執(zhí)行時(shí)間怎么看

java線程 如何監(jiān)控用戶操作超時(shí)

給一個(gè)我自己的絲路:

為湖北等地區(qū)用戶提供了全套網(wǎng)頁(yè)設(shè)計(jì)制作服務(wù),及湖北網(wǎng)站建設(shè)行業(yè)解決方案。主營(yíng)業(yè)務(wù)為成都做網(wǎng)站、網(wǎng)站設(shè)計(jì)、外貿(mào)營(yíng)銷網(wǎng)站建設(shè)、湖北網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠(chéng)的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長(zhǎng)期合作。這樣,我們也可以走得更遠(yuǎn)!

用戶開(kāi)始操作時(shí),session記錄狀態(tài)。并開(kāi)啟定時(shí)器,延遲時(shí)間就是你允許用戶操作的時(shí)間。定時(shí)器執(zhí)行的代碼,就是用戶超時(shí)后,你要做的事情。

用戶在時(shí)間范圍內(nèi)操作完成,肯定會(huì)給服務(wù)器發(fā)送完成信息,此時(shí)移除定時(shí)器即可。

java 方法 執(zhí)行超時(shí)處理

java 1.5以上的Future類可以執(zhí)行超時(shí)處理。

jdk1.5自帶的并發(fā)庫(kù)中Future類中重要方法包括get()和cancel(),get()獲取數(shù)據(jù)對(duì)象,如果數(shù)據(jù)沒(méi)有加載,就會(huì)阻塞直到取到數(shù)據(jù),而 cancel()是取消數(shù)據(jù)加載。另外一個(gè)get(timeout)操作,表示如果在timeout時(shí)間內(nèi)沒(méi)有取到就失敗返回,而不再阻塞。

代碼如下:

import?java.util.concurrent.Callable;

import?java.util.concurrent.ExecutionException;

import?java.util.concurrent.ExecutorService;

import?java.util.concurrent.Executors;

import?java.util.concurrent.TimeUnit;

import?com.sun.corba.se.impl.orbutil.closure.Future;

import?com.sun.corba.se.impl.orbutil.threadpool.TimeoutException;

public?class?ThreadTest?{??

public?static?void?main(String[]?args)?throws?InterruptedException,??

ExecutionException?{??

final?ExecutorService?exec?=?Executors.newFixedThreadPool(1);??

CallableString?call?=?new?CallableString()?{??

public?String?call()?throws?Exception?{??

//開(kāi)始執(zhí)行耗時(shí)操作??

Thread.sleep(1000?*?5);??

return?"線程執(zhí)行完成.";??

}??

};??

try?{??

FutureString?future?=?exec.submit(call);??

String?obj?=?future.get(1000?*?1,?TimeUnit.MILLISECONDS);?//任務(wù)處理超時(shí)時(shí)間設(shè)為?1?秒??

System.out.println("任務(wù)成功返回:"?+?obj);??

}?catch?(TimeoutException?ex)?{??

System.out.println("處理超時(shí)啦....");??

ex.printStackTrace();??

}?catch?(Exception?e)?{??

System.out.println("處理失敗.");??

e.printStackTrace();??

}??

//?關(guān)閉線程池??

exec.shutdown();??

}??

}

java怎么讓程序每天晚上12點(diǎn)做定時(shí)任務(wù),因?yàn)槌绦蚴遣欢〞r(shí)開(kāi)的,所以要實(shí)時(shí)監(jiān)聽(tīng)系統(tǒng)時(shí)間。

java定時(shí)任務(wù),每天定時(shí)執(zhí)行任務(wù)(JDK TimerTask)

標(biāo)簽: taskTasktimerTimer

2013-01-14 13:28 8747人閱讀 評(píng)論(0) 收藏 舉報(bào)

01 public class TimerManager {

02

03 //時(shí)間間隔

04 private static final long PERIOD_DAY = 24 * 60 * 60 * 1000;

05

06 public TimerManager() {

07 Calendar calendar = Calendar.getInstance();

08

09 /*** 定制每日2:00執(zhí)行方法 ***/

10

11 calendar.set(Calendar.HOUR_OF_DAY, 2);

12 calendar.set(Calendar.MINUTE, 0);

13 calendar.set(Calendar.SECOND, 0);

14

15 Date date=calendar.getTime(); //第一次執(zhí)行定時(shí)任務(wù)的時(shí)間

16

17 //如果第一次執(zhí)行定時(shí)任務(wù)的時(shí)間 小于 當(dāng)前的時(shí)間

18 //此時(shí)要在 第一次執(zhí)行定時(shí)任務(wù)的時(shí)間 加一天,以便此任務(wù)在下個(gè)時(shí)間點(diǎn)執(zhí)行。如果不加一天,任務(wù)會(huì)立即執(zhí)行。

19 if (date.before(new Date())) {

20 date = this.addDay(date, 1);

21 }

22

23 Timer timer = new Timer();

24

25 NFDFlightDataTimerTask task = new NFDFlightDataTimerTask();

26 //安排指定的任務(wù)在指定的時(shí)間開(kāi)始進(jìn)行重復(fù)的固定延遲執(zhí)行。

27 timer.schedule(task,date,PERIOD_DAY);

28 }

29

30 // 增加或減少天數(shù)

31 public Date addDay(Date date, int num) {

32 Calendar startDT = Calendar.getInstance();

33 startDT.setTime(date);

34 startDT.add(Calendar.DAY_OF_MONTH, num);

35 return startDT.getTime();

36 }

37

38 }

在 TimerManager 這個(gè)類里面,大家一定要注意 時(shí)間點(diǎn)的問(wèn)題。如果你設(shè)定在凌晨2點(diǎn)執(zhí)行任務(wù)。但你是在2點(diǎn)以后

發(fā)布的程序或是重啟過(guò)服務(wù),那這樣的情況下,任務(wù)會(huì)立即執(zhí)行,而不是等到第二天的凌晨2點(diǎn)執(zhí)行。為了,避免這種情況

發(fā)生,只能判斷一下,如果發(fā)布或重啟服務(wù)的時(shí)間晚于定時(shí)執(zhí)行任務(wù)的時(shí)間,就在此基礎(chǔ)上加一天。

01 public class NFDFlightDataTimerTask extends TimerTask {

02

03 private static Logger log = Logger.getLogger(NFDFlightDataTimerTask.class);

04

05 @Override

06 public void run() {

07 try {

08 //在這里寫你要執(zhí)行的內(nèi)容

09

10 } catch (Exception e) {

11 log.info("-------------解析信息發(fā)生異常--------------");

12 }

13 }

14 }

15

16 public class NFDFlightDataTaskListener implements ServletContextListener {

17

18 public void contextInitialized(ServletContextEvent event) {

19 new TimerManager();

20 }

21

22 public void contextDestroyed(ServletContextEvent event) {

23 }

24

25 }

然后要在web.xml里面配置監(jiān)聽(tīng)器

1 listener

2 listener-class

3 com.listener.NFDFlightDataTaskListener

4 /listener-class

5 /listener

請(qǐng)教,怎么監(jiān)控一個(gè)Java程序是否運(yùn)行結(jié)束

檢測(cè)一個(gè)JAVA程序的運(yùn)行時(shí)間方法:

1

2

3

4

long startTime = System.currentTimeMillis();//獲取當(dāng)前時(shí)間

//doSomeThing(); //要運(yùn)行的java程序

long endTime = System.currentTimeMillis();

System.out.println("程序運(yùn)行時(shí)間:"+(endTime-startTime)+"ms");

分享題目:監(jiān)控java代碼執(zhí)行時(shí)間 監(jiān)控java代碼執(zhí)行時(shí)間怎么看
網(wǎng)站鏈接:http://vcdvsql.cn/article40/ddihdho.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信公眾號(hào)商城網(wǎng)站自適應(yīng)網(wǎng)站標(biāo)簽優(yōu)化網(wǎng)站制作云服務(wù)器

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都做網(wǎng)站