把大任务分割成多个小任务,再把小任务的结果汇总,最终获得大任务的结果。spa
指的是线程从其余线程窃取任务来执行。当一个大任务分割成多个小任务的时候,为了减小线程之间的竞争,把小任务放在不一样的队列里,每一个队列都分配一个线程来执行任务。当一个线程执行完当前队列的任务时,他就会去窃取其余队列的任务来执行。因为都是同一个队列执行小任务,为了减小线程之间的竞争,窃取任务的时候,从队列的尾部拿任务。线程
缺点:blog
实现了Future的接口,主要的子类有RecursiveAction和RecursiveTask。接口
主要的方法:队列
经过调用invoke来执行ForkJoinTask的任务。ip