一:LockSupport的介绍
在Condition的API中,我们看到其中阻塞和唤醒的方法都用到了park()和unpark()方法,这其实就是工具类LockSupport提供的对于指定线程的操作方法。
对于LockSupport的底层实现大部分呢都是借助于原子类的实现类UnSafe,这个类是java中允许直接操作指针的(所以命名为:UNSafe),所以关于其底层实现会在后续说明。
二:相关API
三:使用说明
LockSupport的核心API只有2个:park()阻塞当前线程,unpark()唤醒当前线程。其中方法是有一个只有(0,1)的信号量控制(又叫许可证),当调用unpark()时许可证置为1,否则置为0.。