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