博客专栏  >  编程语言   >  JUC 锁

JUC 锁

主要介绍 J.U.C 包中关于锁的内容,源码均来自 JDK 1.7

关注
1 已关注
12篇博文
  • 01.JUC 锁 - 概述

    基本概念J.U.C 包是 java.util.concurrent 包的简写。这个包在JDK5引入,大大增强了Java的并发特性。JDK7还引入ForkJoin框架。在 JUC 中,并发离不开锁,因为...

    2017-02-12 22:03
    180
  • 02.JUC 锁 - CAS

    基本概念CAS(compare and swap),即比较并交换。它在 J.U.C 包中被广泛使用。是一种对内存中的共享数据进行操作的指令,而且该操作是原子的读写操作。CAS 操作包含三个操作数:内存...

    2017-02-22 15:17
    150
  • 03.JUC 锁 - LockSupport

    基本概念LockSupport 可以用来实现线程的阻塞/唤醒。每个使用 LockSupport 的线程都会与一个许可关联: 若该许可有效,则线程可以继续执行。 若该许可无效,则线程进入阻塞,等待许可证...

    2017-02-13 09:27
    90
  • 04.JUC 锁- AQS - CLH 队列

    基本概念首先我们需要知道两个概念:AQS、CHL 队列。 AQS:即 AbstractQueuedSynchronizer 类,它是整个 J.U.C 框架的核心所在。其中之一的功能就是将线程封装在一个...

    2017-02-22 15:53
    165
  • 05.JUC 锁 - AQS - 独占模式

    基本概念AQS 的独占模式,表示 AQS 通过独占模式获取/释放锁。该类对应的方法为 acquire /acquireInterruptibly/tryAcquireNanos、release。在 A...

    2017-02-22 16:29
    252
  • 06.JUC 锁 - AQS - 共享模式

    基本概念AQS 的共享模式,表示 AQS 通过共享模式获取/释放锁。该类对应的方法为 acquireShared/acquireSharedInterruptibly/tryAcquireShared...

    2017-02-22 16:44
    223
  • 07.JUC 锁 - AQS - Condition

    基本概念Condition ,即条件(也称为条件队列或条件变量)。它主要是为了在 JUC 框架中提供和 Java 传统的监视器风格的 wait、notify、notifyAll 方法类似的功能。Con...

    2017-02-22 20:47
    337
  • 08.JUC 锁 - ReentrantLock

    基本概念ReentrantLock,即可重入锁。可重入锁指的是在一个线程中可以多次获取同一把锁,比如:一个线程在执行一个带锁的方法,该方法中又调用了另一个需要相同锁的方法,则该线程可以直接执行调用的方...

    2017-02-22 20:55
    254
  • 09.JUC 锁 - ReentrantReadWriteLock

    基本概念ReadWriteLock (读写锁)内部维护着两个锁,一个用于写操作,即写锁;一个用于读操作,即读锁。 写锁,是独占锁,即只能被一个线程持有。 读锁,是共享锁,即可以同时被多个线程持有。 它...

    2017-02-22 22:12
    340
  • 10.JUC 锁- CountDownLatch

    基本概念CountDownLatch 这个类能够使一个或多个线程等待其他线程完成各自的工作后再执行。例如,应用程序的主线程希望在负责启动框架服务的线程已经启动所有的框架服务之后再执行。调用方法假设有工...

    2017-02-22 22:57
    306
  • 11.JUC 锁 - Semaphore

    基本概念Semaphore 即计数信号量,它本身维护着一组permit(许可)。它本质是共享锁,通过修改 permit 的值来调整可以被多少个线程同时持有。当信号量中有可用的许可时,线程能获取该许可;...

    2017-02-22 23:19
    224
  • 12.JUC 锁- CyclicBarrier

    基本概念CyclicBarrier ,也称可重用屏障是一个线程同步工具,用于一组互相等待线程之间的协调,在到达某个临界点之前,这些线程必须互相等待。通俗来讲,表示 n 个线程,大家相互等待,只要有一个...

    2017-02-22 23:37
    109

Java 集合
102199
JUC 集合
5535
SpringMVC
1317286
Spring
1413851
Java SE
156008
Java IO
153100

img博客搬家
img撰写博客
img专家申请
img意见反馈
img返回顶部