Java并发编程的艺术
不平凡的凡人
这个作者很懒,什么都没留下…
展开
-
《Java并发编程的艺术》第1章-并发编程的挑战
第1章 并发编程的挑战 并发编程的目的是为了让程序运行得更快,但是,并不是启动更多的线程就能让程序最大限度地并发执行。在进行并发编程时,如果希望通过多线程执行任务让程序运行得更快,会面临非常多的挑战,比如上下文切换的问题、死锁的问题,以及受限于硬件和软件的资源限制问题,本章会介绍几种并发编程的挑战以及解决方案。 1.1 上下文切换 即使是单核处理器也支持多线程执行代码,CPU通过给每个线程分配CP...转载 2019-08-12 22:32:46 · 105 阅读 · 0 评论 -
《Java并发编程的艺术》第2章-Java并发机制的底层实现原理
第2章 Java并发机制的底层实现原理 Java代码在编译后会变成Java字节码,字节码被类加载器加载到JVM里,JVM执行字节码,最终需要转化为汇编指令在CPU上执行,Java中所使用的并发机制依赖于JVM的实现和CPU的指令。本章我们将深入底层一起探索下Java并发机制的底层实现原理。 2.1 volatile的应用 在多线程并发编程中synchronized和volatile都扮演着重要的角...转载 2019-08-12 22:45:42 · 150 阅读 · 0 评论 -
《Java并发编程的艺术》第3章-Java内存模型
第3章 Java内存模型 Java线程之间的通信对程序员完全透明,内存可见性问题很容易困扰Java程序员,本章将揭开Java内存模型神秘的面纱。本章大致分4部分:Java内存模型的基础,主要介绍内存模型相关的基本概念;Java内存模型中的顺序一致性,主要介绍重排序与顺序一致性内存模型;同步原语,主要介绍3个同步原语(synchronized、volatile和final)的内存语义及重排序规则在处...转载 2019-08-12 22:46:45 · 196 阅读 · 0 评论