了解LockSupport工具类

介绍:

  在网上也没有找到太多的东西,大概说了一下,这个工具类的全部方法都是静态的,底层采用UNSAFE直接操做的内存,能够实现线程的阻塞和唤醒编程

 

 能够看到他的park方法调用的是UNSAFE的park方法网络

 

 而UNSAFE的park方法是一个native方法,调用的C的类库了,没办法继续看下去了,由于我也不会C并发

因此咱们大概知道这么多就能够了,固然有一点很是重要,那就是LockSupport在进行线程阻塞和唤醒的时候是不须要获取锁的工具

做用:

  park:阻塞一个线程线程

  unpark:唤醒一个线程blog

  他是构建同步组件的基础工具继承

为何说是构建同步组件的基础工具呢,是由于AQS中的阻塞和唤醒就是基于LockSupport作的内存

 

 而ReentrantLock中的Sync又是继承了AQS来完成的锁,因此说他是构建同步组件的基础工具开发

好了,了解这些就足够了,再深层次的,就不是这个阶段,所能看得懂的了同步

我看网上都写了一个小Demo,我觉的没有太大的实际意义,至少我在开发中,历来没有直接用过LockSupport,你们就当扩充一下知识,图个乐呵

做者:彼岸舞

时间:2020\11\04

内容关于:并发编程

本文来源于网络,只作技术分享,一律不负任何责任