多线程
码bug的小砖家
栈和队列的区别是啥?吃多了拉就是队列;吃多了吐就是栈
展开
-
死磕JUC之AQS源码,一篇就够
AQS(抽象队列同步器)前言简单了解AQS的应用同步组件JUC中的锁AQS的结构Node节点AQS 队列结构图独占锁acquire(获取锁)1、tryAcquire(尝试获取锁)2、addWaiter(添加等待节点)3、acquireQueued(排队获取锁)获取独占锁的流程图总结release(释放锁)1、tryRelease(尝试释放锁)2、unparkSuccessor(唤醒后继节点)共享锁acquireShared(获取同步状态)1、tryAcquireShared(尝试获取锁)2、doAcquir原创 2020-06-08 00:40:05 · 621 阅读 · 0 评论 -
你该不会还不知道Java线程的几种状态吧?
Java线程分为几种状态,在网上一搜,答案不尽人意。很多文章还写着分为五种状态,其实线程分为几种状态,我们看看 jdk 源码便知。 Java线程分为六种状态: NEW(新建):创建线程对象后尚未启动的线程,即未调用start方法; RUNNABLE(运行):Java线程中将就绪(ready)和运行中(running)两种状态笼统的称为“运行”。线程对象创建后,调用了该对象的start()方法,该状态的线程位于可运行线程池中,等待被线程调度选中,获取CPU的使用权,此时处于就绪状态(ready)。就绪状态原创 2020-06-05 13:59:40 · 117 阅读 · 0 评论