
Java并发编程实战技巧
5星
- 浏览量: 0
- 大小:None
- 文件类型:RAR
简介:
《Java并发编程实战技巧》一书深入浅出地讲解了Java多线程和并发编程的核心概念与实践方法,帮助读者解决复杂场景下的高效并行处理问题。
前言
第1章 简介
1.1 并发简史
1.2 线程的优势
1.2.1 发挥多处理器的强大能力
1.2.2 建模的简单性
1.2.3 异步事件处理简化
1.2.4 用户界面响应更快
1.3 线程带来的风险
1.3.1 安全问题
1.3.2 活跃性问题
1.3.3 性能问题
1.4 线程无处不在
第一部分 基础知识
第2章 线程安全性
2.1 什么是线程安全性
2.2 原子性
2.2.1 竞态条件
2.2.2 示例:延迟初始化中的竞态条件
2.2.3 复合操作
2.3 加锁机制
2.3.1 内置锁
2.3.2 重入
2.4 使用锁保护状态
2.5 活跃性和性能
第3章 对象的共享
3.1 可见性
3.1.1 失效数据
3.1.2 非原子64位操作
3.1.3 加锁与可见性
3.1.4 Volatile变量
3.2 发布和逸出
3.3 线程封闭
3.3.1 Ad-hoc线程封闭
3.3.2 栈封闭
3.3.3 ThreadLocal类
3.4 不变性
3.4.1 Final域
3.4.2 示例:使用Volatile类型发布不可变对象
3.5 安全发布
3.5.1 错误的发布:正确对象被破坏
3.5.2 不可变对象与初始化安全性
3.5.3 常用的安全模式
3.5.4 事实上的不变性
3.5.5 可变对象
3.5.6 安全地共享对象
第4章 对象的组合
4.1 设计线程安全类
4.1.1 收集同步需求
4.1.2 依赖状态的操作
4.1.3 状态的所有权
4.2 实例封闭
4.2.1 Java监视器模式
4.2.2 示例:车辆追踪
4.3 委托线程安全性
4.3.1 示例:基于委托的车辆追踪器
4.3.2 独立的状态变量
4.3.3 当委托失效时
4.3.4 发布底层状态变量
4.3.5 示例:发布状态的车辆追踪器
4.4 在现有线程安全类中添加功能
4.4.1 客户端加锁机制
4.4.2 组合
4.5 文档化同步策略
第5章 基础构建模块
5.1 同步容器类
5.1.1 同步容器类的问题
5.1.2 迭代器与Concurrent-ModificationException
5.1.3 隐藏迭代器
5.2 并发容器
5.2.1 ConcurrentHashMap
5.2.2 原子Map操作
5.2.3 CopyOnWriteArrayList
5.3 阻塞队列和生产者消费者模式
5.3.1 示例:桌面搜索
5.3.2 串行线程封闭
5.3.3 双端队列与工作窃取
5.4 阻塞方法和中断方法
5.5 同步工具类
5.5.1 锁定
5.5.2 FutureTask
5.5.3 信号量
5.5.4 栅栏
5.6 构建高效且可扩展的结果缓存
第二部分 结构化并发应用程序
第6章 任务执行
6.1 在线程中执行任务
6.1.1 并行执行任务
6.1.2 显式创建线程
6.1.3 不限制地创建线程不足之处
6.2 Executor框架
6.2.1 示例:基于Executor的Web服务器
6.2.2 执行策略
6.2.3 线程池
6.2.4 Executor生命周期
6.2.5 延迟和周期任务
6.3 寻找可利用并行性
6.3.1 示例:串行页面渲染器
6.3.
全部评论 (0)


