6

我有一个简单的ArrayList,我通过 Java 并发ArrayList从多个s 提供这个。Thread每个Thread都只会读取 this 的同一个实例ArrayList。读取操作过程中是否有出错的可能?

4

2 回答 2

7

如果列表已完全填充并且所有线程始终以只读方式访问,则不会有问题。如果有写操作,则需要同步所有对列表的访问,或者使用并发列表(如CopyOnWriteArrayList)。

于 2012-11-09T14:25:40.757 回答
7

如果不再有写入,则使用它使其不可变Collections.unmodifiableList,然后忘记读取问题。

于 2012-11-09T14:26:21.173 回答