Java8-Stream-No.12
来源:互联网 发布:软件测试网站大全 编辑:程序博客网 时间:2024/05/31 19:18
import java.util.ArrayList;import java.util.Arrays;import java.util.List;import java.util.UUID;import java.util.concurrent.ForkJoinPool;import java.util.concurrent.TimeUnit;public class Streams12 { public static void main(String[] args) { List<String> strings = Arrays.asList("a1", "a2", "b1", "c2", "c1");// test1();// test2(strings); test3(strings);// test4(); } private static void test4() { List<String> values = new ArrayList<>(100); for (int i = 0; i < 100; i++) { UUID uuid = UUID.randomUUID(); values.add(uuid.toString()); } // sequential long t0 = System.nanoTime(); long count = values .parallelStream() .sorted((s1, s2) -> { System.out.format("sort: %s <> %s [%s]\n", s1, s2, Thread.currentThread().getName()); return s1.compareTo(s2); }) .count(); System.out.println(count); long t1 = System.nanoTime(); long millis = TimeUnit.NANOSECONDS.toMillis(t1 - t0); System.out.println(String.format("parallel sort took: %d ms", millis)); } private static void test3(List<String> strings) { strings .parallelStream() .filter(s -> { System.out.format("filter: %s [%s]\n", s, Thread.currentThread().getName()); return true; }) .map(s -> { System.out.format("map: %s [%s]\n", s, Thread.currentThread().getName()); return s.toUpperCase(); }) .sorted((s1, s2) -> { System.out.format("sort: %s <> %s [%s]\n", s1, s2, Thread.currentThread().getName()); return s1.compareTo(s2); }) .forEach(s -> System.out.format("forEach: %s [%s]\n", s, Thread.currentThread().getName())); } private static void test2(List<String> strings) { strings .parallelStream() .filter(s -> { System.out.format("filter: %s [%s]\n", s, Thread.currentThread().getName()); return true; }) .map(s -> { System.out.format("map: %s [%s]\n", s, Thread.currentThread().getName()); return s.toUpperCase(); }) .forEach(s -> System.out.format("forEach: %s [%s]\n", s, Thread.currentThread().getName())); } private static void test1() { // -Djava.util.concurrent.ForkJoinPool.common.parallelism=5 ForkJoinPool commonPool = ForkJoinPool.commonPool(); System.out.println(commonPool.getParallelism()); }}
阅读全文
1 0
- Java8-Stream-No.12
- Java8-Stream-No.01
- Java8-Stream-No.02
- Java8-Stream-No.03
- Java8-Stream-No.04
- Java8-Stream-No.05
- Java8-Stream-No.06
- Java8-Stream-No.07
- Java8-Stream-No.08
- Java8-Stream-No.09
- Java8-Stream-No.10
- Java8-Stream-No.11
- Java8-Stream-No.13
- Java8 Stream
- java8 stream
- Java8 Stream
- Java8 Stream
- Java8:Stream
- 事务复制问题排查
- Linux Socket 多并发服务器开源代码:xSocketd 实现PPC/TPC/SELECT/POLL/EPOLL
- Servlet入门
- Java8-Stream-No.11
- LeetCode-
- Java8-Stream-No.12
- 【重磅推荐】精品项目实战—高仿支付宝,附源码Demo
- Linux的时间和时区设置
- 研三学姐找工作分享-----机器学习
- Java8-Stream-No.13
- BP神经网络(四)——应用案例
- 读《人月神话》40周年中文版
- web学习之添加css样式
- mysql-connector