下面是堆栈跟踪:
java.lang.ArrayStoreException
at java.util.HashMap.transfer(Unknown Source)
at java.util.HashMap.resize(Unknown Source)
at java.util.HashMap.addEntry(Unknown Source)
at java.util.HashMap.put(Unknown Source)
at java.util.HashSet.add(Unknown Source)一些意见:
正如我所理解的那样,这个错误是间歇性的,我怀疑它发生在HashSet (因此是底层HashMap)需要调整自身大小的时候。但不知道为什么这个ArrayStoreException。现在我想知道的是
-What是可能发生此错误的场景吗?
发布于 2011-09-27 06:40:25
我的猜测是,您正在尝试从多个线程中同时更新集合。HashSet和HashMap不是为线程安全而设计的--如果您要从多个线程访问您的集合,则应该使用同步来防止并发访问。
当然,这只是猜测--如果没有看到您的代码,我就无法判断您是否使用了多个线程。但它会伴随着事物的间歇性的一面.
https://stackoverflow.com/questions/7565137
复制相似问题