【笔记】高并发编程第二阶段19讲、多线程不可变对象设计模式Immutable-上

1.不可变对象,一定线程是安全的。 2.可变对象,不一定线程不安全。 String是典型的不可变对象,如下: replace会返回一个新的对象,对string的所有操作(修改等),是返回新的值,不是同一个地址。 String方法中基本上没有加锁的地址,只有一个地方: 在构造函数时,为了访问正在拷贝时,buffer被修改。 StringBuffer有大量的synchronzed,是线程安全的,但不是
相关文章
相关标签/搜索