Fork me on Gitee
共9页: 上一页 1 2 3 4 5 6 7 8 9 下一页 
摘要: SimpleDateFormat 是 Java 提供的一个格式化和解析日期的工具类,日常开发中应该经常会用到,但是由于它是线程不安全的,多线程公用一个 SimpleDateFormat 实例对日期进行解析或者格式化会导致程序出错,本节就讨论下它为何是线程不安全的,以及如何避免。 为了复现上面所说的不阅读全文
posted @ 2018-07-12 16:14 妮蔻 阅读(469) 评论(5) 编辑
摘要: timer在JDK里面,是很早的一个API了。具有延时的,并具有周期性的任务,在newScheduledThreadPool出来之前我们一般会用Timer和TimerTask来做,但是Timer存在一些缺陷,为什么这么说呢? Timer只创建唯一的线程来执行所有Timer任务。如果一个timer任务阅读全文
posted @ 2018-07-12 01:47 妮蔻 阅读(454) 评论(0) 编辑
摘要: JUC 中 Semaphore 的使用与原理分析,Semaphore 也是 Java 中的一个同步器,与 CountDownLatch 和 CycleBarrier 不同在于它内部的计数器是递增的,那么,Semaphore 的内部实现是怎样的呢? Semaphore 信号量也是Java 中一个同步容阅读全文
posted @ 2018-07-08 17:23 妮蔻 阅读(246) 评论(0) 编辑
摘要: JUC 中 回环屏障 CyclicBarrier 的使用与分析,它也可以实现像 CountDownLatch 一样让一组线程全部到达一个状态后再全部同时执行,但是 CyclicBarrier 可以被复用。那么 CyclicBarrier 内部的实现与 CountDownLatch 有何不同那? Co阅读全文
posted @ 2018-07-07 22:10 妮蔻 阅读(192) 评论(0) 编辑
摘要: JUC 中倒数计数器 CountDownLatch 的使用与原理分析,当需要等待多个线程执行完毕后在做一件事情时候 CountDownLatch 是比调用线程的 join 方法更好的选择,CountDownLatch 与 线程的 join 方法区别是什么? 日常开发中经常会遇到需要在主线程中开启多线阅读全文
posted @ 2018-07-06 21:33 妮蔻 阅读(504) 评论(0) 编辑
摘要: JDK 中无界优先级队列PriorityBlockingQueue 内部使用堆算法保证每次出队都是优先级最高的元素,元素入队时候是如何建堆的,元素出队后如何调整堆的平衡的? PriorityBlockingQueue是带优先级的无界阻塞队列,每次出队都返回优先级最好或者最低的元素,内部是平衡二叉树堆阅读全文
posted @ 2018-06-26 16:34 妮蔻 阅读(442) 评论(0) 编辑
摘要: JDK 中基于数组的阻塞队列 ArrayBlockingQueue 原理剖析,ArrayBlockingQueue 内部如何基于一把独占锁以及对应的两个条件变量实现出入队操作的线程安全? 首先我们先大概的浏览一下ArrayBlockingQueue 的内部构造,如下类图: 如类图所示,可以看到Arr阅读全文
posted @ 2018-06-24 16:58 妮蔻 阅读(195) 评论(0) 编辑
摘要: JDK 中基于链表的阻塞队列 LinkedBlockingQueue 原理剖析,LinkedBlockingQueue 内部是如何使用两个独占锁 ReentrantLock 以及对应的条件变量保证多线程先入队出队操作的线程安全?为什么不使用一把锁,使用两把为何能提高并发度? LinkedBlocki阅读全文
posted @ 2018-06-23 21:45 妮蔻 阅读(805) 评论(0) 编辑
摘要: JDK 中基于链表的非阻塞无界队列 ConcurrentLinkedQueue 原理剖析,ConcurrentLinkedQueue 内部是如何使用 CAS 非阻塞算法来保证多线程下入队出队操作的线程安全? ConcurrentLinkedQueue是线程安全的无界非阻塞队列,其底层数据结构是使用单阅读全文
posted @ 2018-06-19 16:46 妮蔻 阅读(1250) 评论(1) 编辑
摘要: StampedLock是JUC并发包里面JDK1.8版本新增的一个锁,该锁提供了三种模式的读写控制,当调用获取锁的系列函数的时候,会返回一个long 型的变量,该变量被称为戳记(stamp),这个戳记代表了锁的状态。 try系列获取锁的函数,当获取锁失败后会返回为0的stamp值。当调用释放锁和转换阅读全文
posted @ 2018-06-16 23:27 妮蔻 阅读(2151) 评论(1) 编辑
共9页: 上一页 1 2 3 4 5 6 7 8 9 下一页