![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
并发-多线程
coleAI
代码的搬运工
展开
-
聊聊并发(四)——深入分析ConcurrentHashMap
ConcurrentHashMap转载 2016-09-28 17:41:21 · 286 阅读 · 0 评论 -
聊聊并发(一)——深入分析Volatile的实现原理
引言在多线程并发编程中synchronized和Volatile都扮演着重要的角色,Volatile是轻量级的synchronized,它在多处理器开发中保证了共享变量的“可见性”。可见性的意思是当一个线程修改一个共享变量时,另外一个线程能读到这个修改的值。它在某些情况下比synchronized的开销更小,本文将深入分析在硬件层面上Inter处理器是如何实现Volatile的,通过深入分析能帮助我转载 2016-09-29 10:31:26 · 263 阅读 · 0 评论 -
聊聊并发(二)——Java SE1.6中的Synchronized
1. 引言在多线程并发编程中Synchronized一直是元老级角色,很多人都会称呼它为重量级锁,但是随着Java SE1.6对Synchronized进行了各种优化之后,有些情况下它并不那么重了,本文详细介绍了Java SE1.6中为了减少获得锁和释放锁带来的性能消耗而引入的偏向锁和轻量级锁,以及锁的存储结构和升级过程。2. 术语定义 术语 英文 说明 CAS Compare转载 2016-09-29 11:32:18 · 275 阅读 · 0 评论 -
聊聊并发(三)——JAVA线程池的分析和使用
1. 引言合理利用线程池能够带来三个好处。 第一:降低资源消耗。通过重复利用已创建的线程降低线程创建和销毁造成的消耗。 第二:提高响应速度。当任务到达时,任务可以不需要等到线程创建就能立即执行。 第三:提高线程的可管理性。线程是稀缺资源,如果无限制的创建,不仅会消耗系统资源,还会降低系统的稳定性,使用线程池可以进行统一的分配,调优和监控。但是要做到合理的利用线程池,必须对其原理了如指掌。2.转载 2016-09-29 17:02:39 · 268 阅读 · 0 评论