因为Vector是同步的,所以当一个Iterator使用时,被另一线程改变,将抛出异常,为什么呢?

wren4255 2008-04-22 02:10:49
没看懂这句话!
...全文
107 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
Johnson_Hong 2008-04-22
  • 打赏
  • 举报
回复
就是一个线程操作一个vector的时候,其它的线程不允许去改变他
anqini 2008-04-22
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 wren4255 的回复:]
同步是什么意思?
[/Quote]

对数据的同步,一个时刻只有一个线程访问此Vector,或者修改!

还有,因为数据的同步,所以你执行遍历Iterator的时候别的线程remove掉Vector某个元素,就出异常了!

还有Vector是老板本的容器,建议你使用新版本的,List,Map,Set,Collections类来保持同步!
joejoe1991 2008-04-22
  • 打赏
  • 举报
回复
没用过vector ,学习。
wren4255 2008-04-22
  • 打赏
  • 举报
回复
同步是什么意思?
finalzhzhk 2008-04-22
  • 打赏
  • 举报
回复
Vector是同步的,
所以当一个线程使用它时,而另一个线程想改变它,就会导致异常了.
(这句话提到的Iterator只是这个Vector的一个引用)

62,623

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧