Executor的实现
摘要:Executor框架最核心的类是ThreadPoolExecutor它是线程的核型类,主要由下列4个组件构成。 1.corePool:核心线程池的大小 2.maximumPool:最大线程池的大小 3.BlockingQueue:用来暂时保存任务的工作队列 4.RejectedExecutionHa
阅读全文
posted @
2018-10-07 16:19
蔡苗
阅读(206)
推荐(0)
Java中线程池的介绍
摘要:Java中线程池是运用场景的并发框架,几乎所需要异步或并发执行程序都可以使用线程池。合理使用线程池可以带来以下好处: 1. 降低资源消耗。通过重复利用以创建的线程降低线程的创建和销毁造成的消耗。 2. 提高响应速度。当任务到达时,任务可以不需要等到线程的创建就能立即执行。 3.提高线程的可管理性。
阅读全文
posted @
2018-08-27 18:19
蔡苗
阅读(175)
推荐(0)
Java锁的升降级及synchoronized优化
摘要:JavaSE 减少了获得锁和释放锁带来的性能消耗,引入了"偏向锁"和"轻量级锁"。在javaSe 1.6中,锁一共4种状态,级别从低到高依次是:无锁状态,偏向锁状态,轻量级锁状态,重量级锁状态,这个几个状态会随着竞争状态进行升级。锁可以升级但不能降级,意味者偏向锁升级成轻量级锁不能降级成偏向锁。这种
阅读全文
posted @
2018-08-18 14:10
蔡苗
阅读(1769)
推荐(0)
ThreadLocal应用与原理
摘要:ThreadLocal是什么呢?其实ThreadLocal并非是一个线程的本地实现版本,它并不是一个Thread,而是threadlocalvariable(线程局部变量)。也许把它命名为ThreadLocalVar更加合适。线程局部变量(ThreadLocal)其实的功用非常简单,就是为每一个使用
阅读全文
posted @
2018-08-15 17:32
蔡苗
阅读(148)
推荐(0)
CPU多级缓存与缓存一致性
摘要:1.为什么要有缓存? 随着现代半导体工艺的发展,CPU的频率越来越快,相对内存快了一个数量级,对于访存的操作CPU就需要等待主存,这样会导致资源的白白浪费。所以cache的出现为了解决CPU与内存速度不匹配的问题。(cpu ->cache->memory) cache的思想在我们日常的生活随处可见,
阅读全文
posted @
2018-07-17 23:34
蔡苗
阅读(3054)
推荐(1)