小编Pra*_*Kvn的帖子

为什么 list.parallelStream().forEach() 不处理 Java 中列表中的所有元素?

以下代码在完成并行处理后并未将所有元素放入目标列表中。这有什么原因吗?

public static void main(String[] args) {

    List<Integer> source =new ArrayList<>();
    List<Integer> destination = new ArrayList<>();
    IntStream.range(0, 10000).forEach(element ->{
        source.add(element);
    });

    //System.out.println(source.size());

    source.parallelStream().forEach(c->{
        destination.add(c);
    });

    System.out.println("Source Size:"+source.size());
    System.out.println("destination size:"+destination.size());
}
Run Code Online (Sandbox Code Playgroud)

输出:源大小:10000 目标大小:4343

java parallel-processing java-stream

9
推荐指数
2
解决办法
3337
查看次数

标签 统计

java ×1

java-stream ×1

parallel-processing ×1