Java虚拟机并发编程(百度云)
本帖最后由 hutuhutu 于 2021-10-8 10:23 编辑Java虚拟机并发编程
作者:[美] Venkat Subramaniam
译者: 薛笛
内容简介:
苏布拉马尼亚姆所著的《Java虚拟机并发编程》是Java并发编程领域的里程碑之作,由资深Java技术专家、并发编程专家、敏捷开发专家和Jolt大奖得主撰写,Amazon五星级畅销书。它系统深入地讲解在JVM平台上如何利用JDK同步模型、软件事务内存模型和基于角色的并发模型更好地进行并发编程。全书以示例驱动,通俗易懂,包含大量编程技巧、注意事项和最佳实践。要重点强调的是,本书并不仅仅只适合于Java语言的并发编程,它还适用于clojure、Groovy、JRuby和Scala等所有运行在JVM平台上的编程语言。
《Java虚拟机并发编程》共10章,分为五个部分。第一部分:并发策略,阐释了影响并发性的因素、如何有效实现并发,以及并发的设计方法等;第二部分:现代Java/JDK并发,讨论了现代Java API的线程安全和效率,以及如何处理已有应用程序中的现实问题和重构遗留代码时的原则;第三部分:软件事务内存,深入讨论了STM并就如何在各种主要的JVM语言里使用STM给出了指导意见;第四部分:基于角色的并发,详细讲解了如何在基于角色的模型下消除并发问题以及如何在自己的首选语言中使用角色模型;第五部分:后记,回顾了本书讨论的解决方案并总结了并发编程中的注意事项和最佳实践。
链接:百度网盘
**** 本内容需购买 ****
目录
第1章 并发的威力与风险 1
1.1线程:程序的执行流程 1
1.2并发的威力 1
1.3并发的风险 4
1.4小结 9
第一部分 并发策略
第2章 分工原则 11
2.1从顺序到并发 11
2.2在IO密集型应用程序中使用并发技术 13
2.3并发方法对IO密集型应用程序的加速效果 19
2.4在计算密集型应用程序中使用并发技术 20
2.5并发方法对于计算密集型应用程序的加速效果 25
2.6有效的并发策略 26
2.7小结 27
第3章 设计方法 28
3.1处理状态 28
3.2探寻设计选项 29
3.3共享可变性设计 29
3.4隔离可变性设计 30
3.5纯粹不可变性设计 30
3.6持久的 不可变的数据结构 31
3.7选择一种设计方法 34
3.8小结 34
第二部分 现代Java JDK并发模型
第4章 可扩展性和线程安全 37
4.1用ExecutorService管理线程 37
4.2使线程协作 38
4.3数据交换 47
4.4Java7Fork—JoinAPI 49
4.5可扩展集合类 51
4.6Lock和Synchronized 54
4.7小结 58
第5章 驯服共享可变性 59
5.1共享可变性!=Public 59
5.2定位并发问题 59
5.3保持不变式 61
5.4管理好资源 62
5.5保证可见性 64
5.6增强并发性 65
5.7保证原子性 67
5.8小结 70
第三部分 软件事务内存
第6章 软件事务内存导论 71
6.1同步与并发水火不容 71
6.2对象模型的缺陷 72
6.3将实体与状态分离 73
6.4软件事务内存 74
6.5STM中的事务 77
6.6用STM实现并发 77
6.7用Akka MultiverseSTM实现并发 82
6.8创建事务 84
6.9创建嵌套事务 90
6.10配置Akka事务 97
6.11阻塞事务—有意识地等待 100
6.12提交和回滚事件 103
6.13集合与事务 106
6.14处理写偏斜异常 110
6.15STM的局限性 112
6.16小结 116
第7章 在Clojure、Groovy、Java、JRuby和Scala中使用STM 117
7.1ClojureSTM 117
7.2Groovy集成 118
7.3Java集成 122
7.4JRuby集成 124
7.5Scala中的可选方案 130
7.6小结 133
第四部分 基于角色的并发模型
第8章 讨喜的隔离可变性 135
8.1用角色实现隔离可变性 136
8.2角色的特性 137
8.3创建角色 138
8.4收发消息 144
8.5同时使用多个角色 148
8.6多角色协作 152
8.7使用类型化角色 159
8.8类型化角色和murmurs 163
8.9混合使用角色和STM 169
8.10使用transactor 169
8.11调和类型化角色 176
8.12远程角色 182
8.13基于角色模型的局限性 184
8.14小结 184
第9章 在Groovy、Java、JRuby和Scala中使用角色 186
9.1在Groovy中使用GPars提供的角色实现 186
9.2在Java中使用Akka提供的角色实现 199
9.3在JRuby中使用Akka提供的Actor实现 199
9.4在Scala中使用角色 202
9.5小结 202
第五部分 后记
第10章 并发编程之禅 205
10.1慎重选择 205
10.2并发:程序员指南 206
10.3并发:架构师指南 207
10.4明智地进行选择 208
附录1 Clojureagent 210
附录2 一些网络资源 214
参考文献 216
强烈支持楼主ing…… 666666 强烈支持楼主ing…… 激动人心,无法言表!
页:
[1]