把大任務分割成多個小任務,再把小任務的結果彙總,最終獲得大任務的結果。spa
指的是線程從其餘線程竊取任務來執行。當一個大任務分割成多個小任務的時候,爲了減小線程之間的競爭,把小任務放在不一樣的隊列裏,每一個隊列都分配一個線程來執行任務。當一個線程執行完當前隊列的任務時,他就會去竊取其餘隊列的任務來執行。因爲都是同一個隊列執行小任務,爲了減小線程之間的競爭,竊取任務的時候,從隊列的尾部拿任務。線程
缺點:blog
實現了Future的接口,主要的子類有RecursiveAction和RecursiveTask。接口
主要的方法:隊列
經過調用invoke來執行ForkJoinTask的任務。ip