并发编程
yeLinMe
这个作者很懒,什么都没留下…
展开
-
reentrantlock
Reentrantlock实现机制交替的情况加锁(源码)非公平锁公平锁重入锁的源码实现 实现机制 内部使用aqs,park,unpark,cms来实现加锁过程,如果是单线程或者是线程间的交替执行则与aqs队列无关,不会进行任务线程的存储,直接获取锁. 交替的情况加锁(源码) 非公平锁 设置断点进入lock方法 1.调用sync 的lock()方法 2.默认调用实现sync的非公平锁的类中的lock()方法 直接通过cms修改state变量 3.获取锁之后设置当前执行的线程 然后返回继续执行方法原创 2020-08-21 15:27:29 · 107 阅读 · 0 评论 -
synchronized
概念 synchronized是java实现并发编程的一种方式,在jdk7之前和jdk7之后有较大的的差别 区别 jdk7 synchronized是一个重量级锁,其线程对应的是操作系统os中的线程 由于该线程为os 的线程因此,系统需要切换到内核态,通过调用native 的本地方法来进行线程调度. ...原创 2020-08-20 10:42:11 · 84 阅读 · 0 评论