其他分享
首页 > 其他分享> > LockSupport

LockSupport

作者:互联网

LockSupport是JDK中比较底层的类,用来创建锁和其他同步工具类的基本线程阻塞原语。java锁和同步框架AQS:AbstractQueuedSynchronizer,就是通过LockSupport.park() 和 LockSupport.unpark() 实现线程阻塞和唤醒的。

LockSupport 很类似于二元信号量(只有1个许可证可供使用),如果这个许可还没有被占用,当前线程获取许可并继 续 执行;如果许可已经被占用,当前线 程阻塞,等待获取许可。

如下代码所示:

    public static void test1() {
        LockSupport.unpark(Thread.currentThread());
        LockSupport.park();
        System.out.println("block");
    }

  注意: 要先释放许可,再获取许可。

 

标签:许可,park,阻塞,LockSupport,unpark,线程
来源: https://www.cnblogs.com/linlf03/p/16134843.html