public?final?void?awaitRunning(long?timeout,?TimeUnit?unit)
在江華等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供網(wǎng)站建設(shè)、網(wǎng)站制作 網(wǎng)站設(shè)計制作按需網(wǎng)站開發(fā),公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),高端網(wǎng)站設(shè)計,全網(wǎng)整合營銷推廣,外貿(mào)網(wǎng)站建設(shè),江華網(wǎng)站建設(shè)費用合理。
waitForServiceToStop(long?timeout)
timeout?(ms),
你用哪個AbstractService包呢
1. 單擊“開始”,單擊“運行”,鍵入 regedit,然后單擊“確定”,cheap chanel handbag。
2. 在注冊表中找到并單擊以下項:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\InternetSettings
3. 在“編輯”菜單上,假期OVER,指向“新建”,然后單擊“DWORD 值”。
4. 鍵入 KeepAliveTimeout,然后按 Enter 鍵。
5. 在“編輯”菜單上,單擊“修改”。
6. 鍵入相應(yīng)的超時值(以毫秒為單位),然后單擊“確定”。
例如,要將超時值設(shè)置為兩分鐘,請鍵入 120000。
7. 重新啟動 Internet Explorer。
1 package bing.test;
2
3 import java.util.concurrent.locks.Lock;
4 import java.util.concurrent.locks.ReadWriteLock;
5 import java.util.concurrent.locks.ReentrantReadWriteLock;
6
7 public class UpgradeLock{
8 private UpgradeLock(){ }
9 private final static ReadWriteLock rwlock =new ReentrantReadWriteLock();
10 private final static Lock read=rwlock.readLock();
11 private final static Lock write=rwlock.writeLock();
12
13
14 public static void main(String[] args){
15 log(getReadLock());
16 log(getWriteLock());
17 }
18
19
20 public static boolean getReadLock()
21 {
22 try{
23 int time = 0;
24 // 設(shè)置超時時間為5秒,獲取Lock,
25 //如果返回false(即獲取失敗)則等待直到超時,然后返回獲取lock的狀態(tài)
26 while(!read.tryLock() ++time 5){
27 Thread.sleep(1000);
28 log(time);
29 }
30 return read.tryLock();
31 }catch(Exception e)
32 {
33 e.printStackTrace();
34 return false;
35 }
36 }
37 public static boolean getWriteLock()
38 {
39 try{
40 int time = 0;
41 // 設(shè)置超時時間為5秒,獲取Lock,
42 //如果返回false(即獲取失敗)則等待直到超時,然后返回獲取lock的狀態(tài)
43 while(!write.tryLock() ++time 5){
44 Thread.sleep(1000);
45 log(time);
46 }
47 return read.tryLock();
48 }catch(Exception e)
49 {
50 e.printStackTrace();
51 return false;
52 }
53 }
54 public static void log(Object m){
55 System.out.println(m);
56 }
57 }
java 1.5以上的Future類可以執(zhí)行超時處理。
jdk1.5自帶的并發(fā)庫中Future類中重要方法包括get()和cancel(),get()獲取數(shù)據(jù)對象,如果數(shù)據(jù)沒有加載,就會阻塞直到取到數(shù)據(jù),而 cancel()是取消數(shù)據(jù)加載。另外一個get(timeout)操作,表示如果在timeout時間內(nè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?{??
//開始執(zhí)行耗時操作??
Thread.sleep(1000?*?5);??
return?"線程執(zhí)行完成.";??
}??
};??
try?{??
FutureString?future?=?exec.submit(call);??
String?obj?=?future.get(1000?*?1,?TimeUnit.MILLISECONDS);?//任務(wù)處理超時時間設(shè)為?1?秒??
System.out.println("任務(wù)成功返回:"?+?obj);??
}?catch?(TimeoutException?ex)?{??
System.out.println("處理超時啦....");??
ex.printStackTrace();??
}?catch?(Exception?e)?{??
System.out.println("處理失敗.");??
e.printStackTrace();??
}??
//?關(guān)閉線程池??
exec.shutdown();??
}??
}
新聞名稱:java超時設(shè)置代碼,java請求超時時間怎么實現(xiàn)
分享地址:http://www.rwnh.cn/article12/dsiihdc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站制作、移動網(wǎng)站建設(shè)、電子商務(wù)、網(wǎng)站收錄、定制開發(fā)、品牌網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)