10 2020 档案

关于线程中断的理解
摘要:什么是中断?中断可以理解为线程的一个标识位属性,代表一个运行中的线程是否被其他线程进行了中断操作。它是一种协作机制,线程可以通过这种机制来通知另一个线程,告诉它在合适的或者可能的情况下停止当前工作,并转而执行其他的工作。 interrupt()方法 我们知道,要想中断一个线程,那么就调用该线程的in 阅读全文

posted @ 2020-10-26 18:38 菜鸟向前冲冲冲 阅读(1068) 评论(1) 推荐(0)

简单理解下Unsafe的park和unpark的原理
摘要:我们知道各种并发框架如CountDownLatch、CyclicBarrier和Semaphore是基于AQS (AbstractQueuedSynchronizer)框架实现的,AQS框架借助于两个类: Unsafe(提供CAS操作) //JDK9以后引入了VarHandle变量句柄,代替了Uns 阅读全文

posted @ 2020-10-26 15:22 菜鸟向前冲冲冲 阅读(3799) 评论(0) 推荐(2)

简单理解下ReentrantLock的加锁过程
摘要:源码版本:JDK10 首先我们知道ReentrantLock默认是非公平的和可重入的,基于AQS实现,(AQS是什么?AbstractQueuedSynchronizer:一个队列同步器,用来构建锁或者其他同步组件的基础组件,之所以叫队列同步器,是因为它使用一个由双向链表实现的队列来完成线程的排队等 阅读全文

posted @ 2020-10-24 20:23 菜鸟向前冲冲冲 阅读(443) 评论(0) 推荐(0)

简单理解下Thread.join()方法
摘要:线程A中调用线程B的join方法:线程A会阻塞直到线程B执行完毕或者当B线程被中断,A线程才继续执行。 简单来说:强制让一个线程阻塞直到另一个线程执行完毕后再继续向下执行。 应用场景:一个线程的执行依赖于另一个线程的执行结果,如在主线程中对多个子线程执行的结果进行汇总,需要等待子线程执行完毕。 实现 阅读全文

posted @ 2020-10-23 11:23 菜鸟向前冲冲冲 阅读(241) 评论(0) 推荐(0)

< 2025年6月 >
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 1 2 3 4 5
6 7 8 9 10 11 12

统计

点击右上角即可分享
微信分享提示