AQS
AQS
AQS队列又可以称为CLH队列,AQS的核心就是共享的int类型值叫state
AQS就是用CAS去操作head和tail,就是说用CAS操作代替了锁整条双向链表操作
java的四种引用:强、软、弱、虚
强引用
普通的引用NormalReference,普通的引用也就是默认的引用,默认的引用就是说,只要有一个应用指向这个对象,
那么垃圾回收器一定不会回收它,这就是普通的引用,也就是强引用
软引用
当有一个对象(字节数组)被一个软引用所指向的时候,只有系统内存不够用的时候,才会回收它(内存不够用就把这个软引用回收)。
软引用主要做缓存用
弱引用
只要垃圾回收开到这个引用是一个特别弱的引用指向的时候,就直接把它回收掉。
如果有另外一个强引用指向了这个弱引用之后,只要这个强引用消失掉,这个弱引用就应该去被收回。
虚引用
虚引用就是管理堆外内存的。