在多线程中向ArrayList中add时,出现异常(分析)
1.业务场景
在业务场景中需要处理一批数据,根据某一字段排序后返回。
由于数据量较大采用多线程同步处理,单线程处理后add到集合中,线程结束后排序,但排序时偶尔会报空指针异常,报错的概率很低。
排查错误时发现使用了ArrayList,问题很明显了,因为ArrayList是线程不安全的,所以在多线程中会出现异常,下面我们来分析一下异常原因。
2.错误分析
/**
* Appends the specified element to the end of this list.
*
原创
2022-03-11 18:20:57 ·
1647 阅读 ·
0 评论