![](https://img-blog.csdnimg.cn/direct/c2af4d67569a4a58ac2326435856734d.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Java并发编程系列
文章平均质量分 63
本专栏会记录java并发的理论基础和代码实践。内容包括java中的锁、关键字、JUC工具包、线程池等内容。
起名不费劲
这个作者很懒,什么都没留下…
展开
-
并发踩坑:list共享变量的addAll
list共享变量的addAll,并发修改异常提示:Caused by: org.apache.ibatis.exceptions.PersistenceException: ### Error querying database. Cause: java.util.ConcurrentModificationException原创 2023-12-23 16:36:24 · 818 阅读 · 0 评论 -
Synchronized原理分析
monitor里面有一个计数器,从0开始的。如果一个线程第一次synchronized那里,获取到了myObject对象的monitor的锁,计数器加1,然后第二次synchronized那里,会再次获取myObject对象的monitor的锁,这个就是重入加锁了,然后计数器会再次加1,变成2。这个时候,其他的线程在第一次synchronized那里,会发现说myObject对象的monitor锁的计数器是大于0的,意味着被别人加锁了,然后此时线程就会进入block阻塞状态,什么都干不了,就是等着获取锁。原创 2023-12-01 15:57:33 · 84 阅读 · 1 评论