1、ForkJoin
ForkJoin 在JDK1.7 ,并执行任务!提高效率,大数据量
大数据:Map Reduce (把大任务拆分为小任务)
ForkJoin特点:工作窃取
这个里面维护的是双端队列
例子、异步调用线程
package com.completablecuture; import java.util.concurrent.CompletableFuture; import java.util.concurrent.ExecutionException; import java.util.concurrent.TimeUnit; /** * 异步调用:CompletableFuture * 异步执行 * 成功回调 * 失败回调 */ public class CompletableFutureDemo { public static void main(String[] args) throws ExecutionException, InterruptedException { //发起一个请求 CompletableFuture<Void> completableFuture = CompletableFuture.runAsync(()->{ try { TimeUnit.SECONDS.sleep(2); } catch (InterruptedException e) { e.printStackTrace(); } System.out.println(Thread.currentThread().getName()+"===>runAsync==>Void"); }); System.out.println("hello world!"); completableFuture.get();//获取阻塞执行线程 } }
测试结果: