概述
原答案
https://stackoverflow.com/questions/1386275/why-is-java-vector-class-considered-obsolete-or-deprecated
Vector在每个单独的操作上同步。这几乎从来没有你想要做的。
通常你想同步整个操作序列。同步单个操作不太安全(例如,如果您遍历Vector,则仍需要取出锁以避免其他人同时更改集合,这会在迭代线程中导致ConcurrentModificationException),而且还速度较慢(为什么在一次足够的时候反复地重复锁定)?
当然,即使你不需要,它也有锁定的开销。
基本上,在大多数情况下,这是一个非常有缺陷的同步方法。正如Brian Henk先生指出的那样,您可以使用诸如Collections.synchronizedList之类的调用来装饰集合 - Vector将“调整大小的数组”集合实现与“同步每个操作”位相结合的事实是设计不佳的另一个例子;装修方式让人更清楚地分离顾虑。
最后
以上就是迷你灯泡为你收集整理的vector过时的代替建议的全部内容,希望文章能够帮你解决vector过时的代替建议所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复