JVM
在 Java8 中,永久代已经被移除,被一个称为“元数据区”(元空间)的区域所取代。元空间 的本质和永久代类似,元空间与永久代之间最大的区别在于:元空间并不在虚拟机中,而是使用 本地内存。因此,默认情况下,元空间的大小仅受本地内存限制。类的元数据放入 native memory, 字符串池和类的静态变量放入 java 堆中,这样可以加载多少类的元数据就不再由 MaxPermSize 控制, 而由系统的实际可用空间来控制。
JAVA8
等待某一任务执行
原始方法使用 CountDownLatch 等待多任务执行
CountDownLatch countDownLatch = new CountDownLatch(6);
...
// 完成一个
countDownLatch.countDown();
// 等待
countDownLatch.await();
使用java8提供的异步处理方法
// 处理一系列文件
List
// 将他们合并起来
CompletableFuture
// doSomeThing
CompletableFuture