今天在做一道jav面试题的时候发现,sync关键字锁不住Integer 类型;
后来发现不是锁不住,而是Integer是一个不可变类,每次i++后返回的是一个新的对象,自然和预想的不一样了。
其实java中中的不可变对象有很多,参看上篇博客。
遇到这种情况应该使用AtomicInteger类,这个类是线程安全的。
sync “锁不住” 的 integer类型
最新推荐文章于 2024-06-06 20:03:31 发布
今天在做一道jav面试题的时候发现,sync关键字锁不住Integer 类型;
后来发现不是锁不住,而是Integer是一个不可变类,每次i++后返回的是一个新的对象,自然和预想的不一样了。
其实java中中的不可变对象有很多,参看上篇博客。
遇到这种情况应该使用AtomicInteger类,这个类是线程安全的。