随笔分类 -  多线程

摘要:上一篇详细的分析了独占模式下如何对线程进行处理:简单的总结是Java面向用户提供了锁的机制,后面的实现使用了一个同步队列,由于队列具有先进先出的特点,把每个线程都构造成为队列中的节点,每个节点定义一个状态值,符合状态的节点(线程)才可以有执行的机会,执行完释放,后面的线程只能是等待着前面的执行结果进 阅读全文
posted @ 2018-04-17 07:20 In_new 阅读(349) 评论(0) 推荐(0)
摘要:我们说的AQS就是AbstractQueuedSynchronizer,他在java.util.concurrent.locks包下,这个类是Java并发的一个核心类。第一次知道有这个类是在看可重入锁ReentrantLock中,在ReentrantLock中有一个内部类Sync继承于Abstrac 阅读全文
posted @ 2018-04-13 18:17 In_new 阅读(317) 评论(0) 推荐(0)
摘要:fail fast 机制是Java集合(Collection)中的一种错误机制。当多个线程对同一个集合的内容进行操作时,就可能会产生fail fast(快速失败)事件。例如:当某一个线程A通过iterator去遍历某集合的过程中,若该集合的内容被其他线程所改变了;那么线程A访问集合时,就会抛出Con 阅读全文
posted @ 2018-03-18 21:11 In_new 阅读(1178) 评论(0) 推荐(0)