我知道Vector类对于添加和删除元素[reference]。
是线程安全的如果我使用ObjectOutputStream序列化Vector,那么即使其他线程在seralization期间添加和删除对象,我在反序列化时也保证了一致(且非损坏)状态?
答案 0 :(得分:7)
writeObject()方法已同步。但Javadoc中没有任何内容可以保证,除非“Vector is synchronized”声明暗示它。
请注意,readObject()方法不需要同步,因为在readObject()返回之前,任何人都无法访问该对象。