1. 程式人生 > 其它 >03-CompletableFuture非同步執行緒 擴充套件

03-CompletableFuture非同步執行緒 擴充套件

方法總結

方法

描述

場景

runAsync

用於開啟一個非同步執行緒,傳入Runnable沒有返回值

開啟一個非同步執行緒,同時不關注返回值

supplyAsync

用於開啟一個非同步執行緒,傳入供給型函式式介面,有返回值

開啟一個非同步執行緒,同時關注返回結果

thenCompose

用於連線上一步的執行結果,繼續處理,傳入一個函式式介面,傳入x,返回y

用於繼續處理上一步執行緒執行的結果(還是上面的執行緒去執行)關注返回結果

thenComposeAsync

..

用於繼續處理上一步執行緒執行的結果(開啟新的執行緒去執行)關注返回結果

thenApply

對上一步的返回結果做後續處理,傳入一個函式式介面,傳入x,返回y

對上一步的返回結果做後續處理(還是上面的執行緒去執行)關注返回結果

thenApplyAsync

..

對上一步的返回結果做後續處理(開啟新的執行緒去執行)關注返回結果

thenAccept

對上一步的結果做後續處理,傳入一個消費型介面,傳入x

對上一步的結果做後續處理(還是上面的執行緒去執行)不關注返回結果

thenAcceptAsync

..

對上一步的結果做後續處理(開啟新的執行緒去執行)不關注返回結果

thenRun

執行一個任務,傳入一個Runnable介面

執行一個執行緒任務(還是上面的執行緒去執行),沒有入參,沒有返回值

thenRunAsync

..

執行一個執行緒任務(開啟新的執行緒去執行),沒有入參,沒有返回值

thenCombine

用於合併兩個執行緒的返回值,第一個引數就是(第二個執行緒任務),第二個引數是傳入一個函式式介面,傳入x,y 返回z

用於執行緒任務合併(還是上面的執行緒去執行),關注返回值

thenCombineAsycn

..

用於執行緒任務合併(開啟新的執行緒去執行),關注返回值

thenAcceptBoth

用於合併兩個執行緒的返回值,第一個引數就是(第二個執行緒任務),第二個引數是傳入一個函式式介面,傳入x,y

用於執行緒任務合併(還是上面的執行緒去執行),不關注返回值

thenAcceptBothAsync

..

用於執行緒任務合併(開啟新的執行緒去執行),不關注返回值

runAfterBoth

用於合併兩個執行緒的返回值,第一個引數就是(第二個執行緒任務),第二個引數是傳入一個Runnable介面

用於執行緒任務合併(還是上面的執行緒去執行),沒有入參,不關注返回值

runAfterBothAsync

..

用於執行緒任務合併(開啟新的執行緒去執行),沒有入參,不關注返回值

applyToEither

用於處理兩個執行緒那個優先完成,第一個引數就是(第二個執行緒任務),第二個引數是一個函式式介面,傳入x,返回y

用於處理兩個執行緒那個優先完成就用那個的返回值(還是上面的執行緒去執行),傳入的x就是優先執行緒返回的結果,關注返回值

applyToEitherAsync

..

用於處理兩個執行緒那個優先完成就用那個的返回值(開啟新的執行緒去執行),傳入的x就是優先執行緒返回的結果,關注返回值

acceptEither

用於處理兩個執行緒那個優先完成,第一個引數就是(第二個執行緒任務),第二個引數是一個消費型介面,傳入x

用於處理兩個執行緒那個優先完成就用那個的返回值(還是上面的執行緒去執行),傳入的x就是優先執行緒返回的結果,不關注返回值

acceptEitherAsync

..

用於處理兩個執行緒那個優先完成就用那個的返回值(開啟新的執行緒去執行),傳入的x就是優先執行緒返回的結果,不關注返回值

runAfterEither

用於處理兩個執行緒那個優先完成,第一個引數就是(第二個執行緒任務),第二個引數是一個Runnable介面

用於處理兩個執行緒那個優先完成就用那個的返回值(還是上面的執行緒去執行),沒有入參,不關注返回值

runAfterEitherAsync

..

用於處理兩個執行緒那個優先完成就用那個的返回值(開啟新的執行緒去執行),沒有入參,不關注返回值

exceptionally

處理上面執行中的異常,傳入一個函式式介面,傳入exception, 返回y

用於處理呼叫異常的情況, 入參是報錯的異常, 關注返回值

handle

處理正常或異常的情況,傳入一個函式式介面,第一個引數是正常結果(如果沒異常),第二個引數是異常物件(如果有異常),返回y

用於處理無論正常和異常都要走的情況(還是上面的執行緒), 關注返回值

handleAsync

..

用於處理無論正常和異常都要走的情況(開啟新的執行緒), 關注返回值

whenComplete

處理正常或異常的情況,傳入一個函式式介面,第一個引數是正常結果(如果沒異常),第二個引數是異常物件(如果有異常)

用於處理無論正常和異常都要走的情況(還是上面的執行緒), 不關注返回值

whenCompleteAsync

..

用於處理無論正常和異常都要走的情況(開啟新的執行緒), 不關注返回值

join

用於獲取返回結果

有返回結果

   

作者:彼岸舞

時間:2022\04\11

內容關於:CompeletableFuture

本文來源於網路,只做技術分享,一概不負任何責任