《实战java高并发程序设计》读书笔记
《实战java高并发程序设计》读书笔记
进击的营长
雁过留痕,掷地有声。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
第五章-并行模式与算法
5.1 探讨单例模式 209 单例模式非常常见,我们不可避免会在多线程环境中使用它们。并且,系统中使用单例的地方可能非常频繁,因此我们非常迫切地需要一种高效的单例实现。 第一种实现方式(饿汉式) public class Singleton private Singleton(){ System.out.println("Singleton is create"); private static...原创 2020-03-15 21:54:30 · 404 阅读 · 0 评论 -
第四章-锁的优化及注意事项
4.1 有助于提高锁性能的几点建议 162 4.1.1 减少锁持有时间 162 系统持有锁时间越长锁竞争程度就越激烈,只对需要同步的代码块加锁,可以减小锁持有时间进而提高锁性能。 减少锁的持有时间有助于降低锁冲突的可能性,进而提高锁的并发能力。 4.1.2 减小锁粒度 163 减小锁粒度就是指缩小锁定对象的范围,从而减小锁冲突的可能性,进而提高并发能力。 例如:如ConcurrentHashM...原创 2020-01-12 16:00:26 · 340 阅读 · 0 评论 -
第三章-JDK并发包
为了更好地支持并发程序,JDK内部提供了大量实用的API和框架。本章主要介绍这些JDK内部的功能,其主要分为三大部分: 同步控制工具 JDK对线程池的支持 JDK的一些并发容器 3.1 多线程的团队协作:同步控制 71 同步控制是并发程序必不可少的重要手段。 下面我们首先将介绍关键字synchronized、Object.wait()方 法和Object.notify() 方法的替代品(或者说...原创 2020-01-09 18:59:09 · 251 阅读 · 0 评论 -
第二章-java并行程序基础
2.1 有关线程你必须知道的事 29 进程是线程的容器,进程是程序的实体。 程序是“死”的,进程是“活”的。 线程就是轻量级进程,是程序执行的最小单位。线程间的切换和调度的成本远远小于进程。 2.2 初始线程:线程的基本操作 32 Java中为线程操作提供了一些API。 2.2.1 新建线程 32 通过new关键字创建一个线程对象,此时线程处于NEW状态,等到线程start()方法被调用时,会让这...原创 2020-01-04 21:37:27 · 161 阅读 · 0 评论 -
第一章-走入并行世界
1.1何去何从的并行计算 1 1.1.1忘掉那该死的并行 2 1.1.2可怕的现实:摩尔定律的失效 4 1.1.3柳暗花明:不断地前进 5 1.1.4光明或是黑暗 6 1.2你必须知道的几个概念 7 1.2.1同步(Synchronous)和异步(Asynchronous) 7 同步和异步通常用来形容一次方法调用。 同步方法调用一旦开始,调用者必须等到方法调用返回后,才能继续后续的行为。 异步方法...原创 2020-01-03 23:35:14 · 214 阅读 · 0 评论
分享