为了账号安全,请及时绑定邮箱和手机立即绑定

emmm最后一个例子在说明什么

用一个list转为并发流,又用Collectors转回普通的list,你既没有remove 也没有add 在说明什么问题呢?

正在回答

2 回答

因为多个线程同时可能都处理了同一条数据,比如线程1和线程2,cpu先分配线程1处理数据,线程1处理到第20个数据时,还未处理完,cpu分配时间到了,然后cpu分配任务给线程2,因为没有同步锁,线程2又把第20条数据add进去了,接着线程2时间到了,轮到线程1,他会接着走他的没走完的那条数据,又会把20add进去,大概就是这个意思,这就是线程不安全和安全的问题,老师说了可以使用同步锁代码块来解决,或者从数据源开始就使用线程暗转的集合

0 回复 有任何疑惑可以回复我~

http://img1.sycdn.imooc.com//5e84291d0001bcab09770658.jpg

补充一下,这里不太明白为啥数组越界了

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

emmm最后一个例子在说明什么

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信