天天看点

从零开始java多线程并发---锁(十):LockSupport一:LockSupport的介绍二:相关API三:使用说明 

一:LockSupport的介绍

  在Condition的API中,我们看到其中阻塞和唤醒的方法都用到了park()和unpark()方法,这其实就是工具类LockSupport提供的对于指定线程的操作方法。

  对于LockSupport的底层实现大部分呢都是借助于原子类的实现类UnSafe,这个类是java中允许直接操作指针的(所以命名为:UNSafe),所以关于其底层实现会在后续说明。

二:相关API

从零开始java多线程并发---锁(十):LockSupport一:LockSupport的介绍二:相关API三:使用说明 

三:使用说明 

LockSupport的核心API只有2个:park()阻塞当前线程,unpark()唤醒当前线程。其中方法是有一个只有(0,1)的信号量控制(又叫许可证),当调用unpark()时许可证置为1,否则置为0.。