91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在java中利用Future獲取線程結果

發布時間:2021-04-25 16:14:35 來源:億速云 閱讀:645 作者:Leah 欄目:編程語言

怎么在java中利用Future獲取線程結果?相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。

java基本數據類型有哪些

Java的基本數據類型分為:1、整數類型,用來表示整數的數據類型。2、浮點類型,用來表示小數的數據類型。3、字符類型,字符類型的關鍵字是“char”。4、布爾類型,是表示邏輯值的基本數據類型。

1、概念

Future表示一個可能還沒有完成的異步任務的結果,針對這個結果可以添加Callback以便在任務執行成功或失敗后作出相應的操作。

2、Future接口

Future接口定義了主要的5個接口方法,有RunnableFuture和SchedualFuture繼承這個接口,以及CompleteFuture和ForkJoinTask繼承這個接口。

3、實例

package test;
 
import java.util.concurrent.Callable;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.FutureTask;
 
public class CallableFutureTest {
 
public static void main(String[] args) {
long startTime = System.currentTimeMillis();
Callable<Integer> calculateCallable = new Callable<Integer>() {
@Override
public Integer call() throws Exception {
// TODO Auto-generated method stub
Thread.sleep(2000);//模擬耗時時間
int result = 1+2;
return result;
}
};
FutureTask<Integer> calculateFutureTask = new FutureTask<>(calculateCallable);
Thread t1 = new Thread(calculateFutureTask);
t1.start();
//現在加入Thread運行的是一個模擬遠程調用耗時的服務,并且依賴他的計算結果(比如網絡計算器)
try {
//模擬耗時任務,主線程做自己的事情,體現多線程的優勢
Thread.sleep(3000);
int a = 3+5;
Integer result = calculateFutureTask.get();
System.out.println("result = "+(a+result));//模擬主線程依賴子線程的運行結果
long endTime = System.currentTimeMillis();
System.out.println("time = "+(endTime-startTime)+"ms");
} catch (InterruptedException | ExecutionException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}

看完上述內容,你們掌握怎么在java中利用Future獲取線程結果的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

孟州市| 腾冲县| 峨边| 荥阳市| 保亭| 永康市| 寿光市| 南澳县| 隆子县| 平邑县| 吕梁市| 洛南县| 文登市| 西贡区| 休宁县| 淳化县| 怀化市| 台湾省| 永春县| 宣威市| 镇赉县| 西华县| 绵阳市| 西乌| 九台市| 全州县| 天水市| 嵊州市| 东山县| 炎陵县| 鹤庆县| 从江县| 黑水县| 大姚县| 柳州市| 北海市| 普陀区| 台湾省| 清水县| 苍溪县| 本溪|