会员
周边
新闻
博问
闪存
众包
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
编码的艺术
专业深度源码分析
博客园
首页
新随笔
联系
订阅
管理
2020年4月7日
JDK源码系列(6):ThreadLocal
摘要: ThreadLocal 1、介绍 该类提供了线程局部 (thread local) 变量。这些变量不同于它们的普通对应物,因为访问某个变量(通过其get 或 set方法)的每个线程都有自己的局部变量,它独立于变量的初始化副本。ThreadLocal实例通常是类中的 private static 字段
阅读全文
posted @ 2020-04-07 20:44 编码的艺术
阅读(169)
评论(0)
推荐(0)
2020年4月1日
JDK源码系列(5):HashTable
摘要: HashTable 1、介绍 底层基于数组与链表实现,通过 关键字保证在多线程的环境下仍然可以正常使用。虽然在多线程环境下有了更好的替代者 ,但是作为一个面试中高频的知识点,我们还是有必要了解一下其内部实现细节的。 内部属性与 几乎一致, 中的 属性并不止是扩容阈值,还有另一个作用:哈希表容量大小,
阅读全文
posted @ 2020-04-01 19:34 编码的艺术
阅读(144)
评论(0)
推荐(0)
JDK源码系列(4):CopyOnWriteArrayList
摘要: CopyOnWriteArrayList 1、介绍 是 juc 包下一个线程安全的并发容器,底层使用数组实现。CopyOnWrite 顾名思义是写时复制的意思,其基本思路是,从一开始大家都在共享同一个内容,当某个人想要修改这个内容的时候,会把内容 Copy 出去形成一个新的内容然后再进行修改,这是一
阅读全文
posted @ 2020-04-01 19:32 编码的艺术
阅读(143)
评论(0)
推荐(0)
2020年3月31日
JDK源码系列(3):Semaphore
摘要: Semaphore 1、介绍 Semaphore是一个计数信号量,可以控同时访问的线程个数,它的本质是一个"共享锁"。 信号量维护了一个信号量许可集。线程可以通过调用acquire()来获取信号量的许可;当信号量中有可用的许可时,线程能获取该许可;否则线程必须等待,直到有可用的许可为止。 线程可以通
阅读全文
posted @ 2020-03-31 17:57 编码的艺术
阅读(112)
评论(0)
推荐(0)
JDK源码系列(2):CyclicBarrier
摘要: CyclicBarrier 1、介绍 CyclicBarrier是一个同步辅助类,它允许一组线程互相等待,直到到达某个公共屏障点 (common barrier point)。在涉及一组固定大小的线程的程序中,这些线程必须不时地互相等待,此时 CyclicBarrier 很有用。因为该 barrie
阅读全文
posted @ 2020-03-31 17:45 编码的艺术
阅读(131)
评论(0)
推荐(0)
2020年3月26日
JDK源码系列(1):CountDownLatch
摘要: CountDownLatch 1、介绍 在并发编程的场景中,最常见的一个case是某个任务的执行,需要等到多个线程都执行完毕之后才可以进行,CountDownLatch可以很好解决这个问题。 闭锁(Latch):一种同步方法,可以延迟线程的进度直到线程到达某个终点状态。通俗的讲就是,一个闭锁
阅读全文
posted @ 2020-03-26 18:36 编码的艺术
阅读(162)
评论(0)
推荐(0)
公告