老师,请问使用并行流的时候处理对象ArrayList或者HashMap是线程不安全的,这个需要如何注意?

来源:3-23 汇总操作实战案例

Ayaka丶

2020-11-06

写回答

1回答

张小喜

2020-11-06

一般开并行主要是为了提升处理速度 这里面就暗含了你的处理操作要线程安全 如果要考虑线程安全就建议还是别开并行 另外如果待处理的数据流元素比较少 开并行的消耗要更大 还不如老老实实串行处理 速度更快

2
2
张小喜
也并不是 只要你保证所有对流中元素的操作都不涉及对共享变量的操作 就没问题 比如你对每个元素做打印 就不涉及线程安全的问题 但是如果你对每个元素做累加 最后返回一个总和 那这种操作你就要注意累加时候的线程安全问题了
2020-11-06
共2条回复

Java高效编程技巧实践 告别996

可以改变的编程效率

1451 学习 · 326 问题

查看课程