并发--synchronized和AQS介绍

2019-04-01  本文已影响0人  简书徐小耳

synchronized和AQS的区别

synchronized和AQS的共同点

Synchronized 核心组件

  1. Wait Set:哪些调用 wait 方法被阻塞的线程被放置在这里;
  2. Contention List: 竞争队列,所有请求锁的线程首先被放在这个竞争队列中;
  3. Entry List: Contention List 中那些有资格成为候选资源的线程被移动到 Entry List 中;
  4. OnDeck:任意时刻, 最多只有一个线程正在竞争锁资源,该线程被成为 OnDeck;
  5. Owner:当前已经获取到所资源的线程被称为 Owner;
  6. !Owner:当前释放锁的线程

synchronized底层依赖操作系统 Mutex Lock

Synchronized的流程

上下文

寄存器

寄存器和高速缓存的区别

上下文切换的活动

上一篇 下一篇

猜你喜欢

热点阅读