摘要:
前言 在java中,如果每个请求到达就创建一个新线程,那么创建和销毁线程所花费的时间是非常巨大的,如果创建过多的线程,会使内存使用过多或者线程切换过于频繁导致系统资源不足。如果使用线程池,事先创建好一定的线程,用一个容器维护,每次任务进来就从池里面获取一个线程,任务执行完就把线程还给线程池。 (1) 阅读全文
摘要:
阻塞队列介绍 1,ArrayBlockingQueue:数组实现的有界阻塞队列, 此队列按照先进先出(FIFO)的原则 对元素进行排序。 2,LinkedBlockingQueue:链表实现的有界阻塞队列, 此队列的默认和最大长度为 Integer.MAX_VALUE。此队列按照先进先出的原则对元 阅读全文
摘要:
1,使用及场景 CHM是J.U.C提供的一个线程安全且高效的HashMap,api基本和Hashmap类似,主要有get,put等方法。 2,源码分析 2.1 JDK1.7和1.8的变化 JDK1.7,简单来说chm是一个segment数组,它通过集成ReentrantLock进行加锁,通过每次锁 阅读全文