万本电子书0元读

万本电子书0元读

顶部广告

深入理解高并发编程:JDK核心技术电子书

面面俱到,JDK核心技术一网尽 大量图解帮助读者加深理解 案例及源代码极具实用性 丰富的配套资源及读者服务

售       价:¥

纸质售价:¥103.20购买纸书

1人正在读 | 0人评论 6.6

作       者:冰河

出  版  社:电子工业出版社

出版时间:2023-02-01

字       数:20.2万

所属分类: 科技 > 计算机/网络 > 程序设计

温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(条)
  • 读书简介
  • 目录
  • 累计评论(条)
本书从实际需求出发,全面细致地介绍了JDK高并发编程的基础知识、核心工具和线程池核心技术。通过阅读和学习本书,读者可以对JDK高并发编程有更加全面、深、透彻的理解,提高对高并发编程问题的处理能力和项目实战能力,并提高站在更高层面解决高并发编程系统架构问题的能力。 本书适合互联网行业从业人员、高校师生阅读,尤其适合中高级发人员、架构师、技术经理及技术专家阅读,也适合对高并发编程感兴趣的人员阅读。<br/>【推荐语】<br/>面面俱到,JDK核心技术一网尽 大量图解帮助读者加深理解 案例及源代码极具实用性 丰富的配套资源及读者服务<br/>【作者】<br/>冰河,互联网资深技术专家、数据库技术专家、分布式与微服务架构专家。 多年来一直致力于分布式系统架构、微服务、分布式数据库、分布式事务与大数据技术的研究,在高并发、高可用、高可扩展性、高可维护性和大数据等领域拥有丰富的架构发经验。 可视化多数据源数据异构中间件 mykit-data 作者,畅销书《深理解高并发编程:核心原理与案例实战》《深理解分布式事务:原理与实战》《海量数据处理与大数据技术实战》和《MySQL 技术大全:发、优化与运维实战》作者,“冰河技术”微信公众号作者。<br/>
目录展开

前折页

内容简介

推荐语

前言

基础篇

第1章 进程与线程的基本概述

1.1 进程

1.1.1 进程的基本概念及构成

1.1.2 进程的三态模型、五态模型和七态模型

1.2 线程

1.2.1 线程的基本概念及构成

1.2.2 线程的生命周期

1.3 线程调度与上下文切换

1.3.1 时间片

1.3.2 线程调度

1.3.3 上下文切换

1.4 进程与线程的综合对比

1.5 查看进程与线程

1.5.1 编写测试程序

1.5.2 查看进程与线程的方式

第2章 线程的基本操作

2.1 创建线程

2.1.1 继承Thread类

2.1.2 实现Runnable接口

2.1.3 实现Callable接口

2.1.4 FutureTask配合Thread

2.1.5 使用线程池

2.2 线程的基本操作

2.2.1 线程设置

2.2.2 线程操作

2.3 线程组

2.3.1 线程关联线程组

2.3.2 线程组自动归属

2.3.3 顶级线程组

2.3.4 向线程组里添加线程组

2.3.5 获取线程组内的对象

2.3.6 批量中断线程组内的线程

核心工具篇

第3章 同步集合

3.1 Vector同步集合类及案例

3.2 Stack同步集合类及案例

3.3 Hashtable同步集合类及案例

3.4 同步包装器及测试

3.5 同步集合的缺陷

第4章 并发List集合类

4.1 CopyOnWriteArrayList概述

4.2 写时复制技术

4.3 初始化

4.4 添加数据

4.5 读取数据

4.6 修改数据

4.7 删除数据

4.8 遍历数据

4.9 使用案例

第5章 并发Set集合类

5.1 CopyOnWriteArraySet集合类

5.1.1 概述

5.1.2 初始化

5.1.3 添加数据

5.1.4 删除数据

5.1.5 遍历数据

5.1.6 使用案例

5.2 ConcurrentSkipListSet集合类

5.2.1 概述

5.2.2 跳表

5.2.3 初始化

5.2.4 添加数据

5.2.5 删除数据

5.2.6 遍历数据

5.2.7 关系运算

5.2.8 有序集合操作

5.2.9 使用案例

第6章 并发Map集合类

6.1 ConcurrentHashMap集合类

6.1.1 概述

6.1.2 结构

6.1.3 成员变量

6.1.4 内部类

6.1.5 构造方法

6.1.6 初始化

6.1.7 扩容

6.1.8 再谈sizeCtl成员变量

6.1.9 添加数据

6.1.10 读取数据

6.1.11 修改数据

6.1.12 删除数据

6.1.13 遍历数据

6.1.14 使用案例

6.2 ConcurrentSkipListMap集合类

6.2.1 概述

6.2.2 内部类

6.2.3 初始化

6.2.4 添加数据

6.2.5 读取数据

6.2.6 修改数据

6.2.7 删除数据

6.2.8 遍历数据

6.2.9 使用案例

第7章 并发阻塞队列

7.1 并发阻塞队列简介

7.1.1 概述

7.1.2 类继承关系

7.1.3 常用方法

7.2 ArrayBlockingQueue

7.2.1 概述

7.2.2 核心成员变量

7.2.3 初始化

7.2.4 添加数据

7.2.5 删除数据

7.2.6 获取数据

7.3 LinkedBlockingQueue

7.3.1 概述

7.3.2 核心成员变量

7.3.3 初始化

7.3.4 添加数据

7.3.5 删除数据

7.3.6 获取数据

7.4 PriorityBlockingQueue

7.4.1 概述

7.4.2 核心成员变量

7.4.3 初始化

7.4.4 添加数据

7.4.5 删除数据

7.4.6 获取数据

7.5 DelayQueue

7.5.1 概述

7.5.2 核心成员变量

7.5.3 初始化

7.5.4 添加数据

7.5.5 删除数据

7.5.6 获取数据

7.6 SynchronousQueue

7.6.1 概述

7.6.2 重要常量与内部类

7.6.3 初始化

7.6.4 添加数据

7.6.5 删除数据

7.6.6 不支持的方法

7.7 LinkedTransferQueue

7.7.1 概述

7.7.2 重要常量与成员变量

7.7.3 重要内部类

7.7.4 初始化

7.7.5 添加数据

7.7.6 删除数据

7.7.7 获取数据

7.7.8 新增方法

7.8 LinkedBlockingDeque

7.8.1 概述

7.8.2 核心成员变量

7.8.3 重要内部类

7.8.4 初始化

7.8.5 添加数据

7.8.6 删除数据

7.8.7 获取数据

7.9 并发阻塞队列案例

7.9.1 生产者与消费者模型

7.9.2 按周期执行的定时任务

第8章 并发非阻塞队列

8.1 并发非阻塞队列简介

8.1.1 概述

8.1.2 类继承关系

8.1.3 常用方法

8.1.4 并发非阻塞队列与并发阻塞队列的区别

8.2 ConcurrentLinkedQueue

8.2.1 概述

8.2.2 核心成员变量

8.2.3 重要内部类

8.2.4 初始化

8.2.5 添加数据

8.2.6 删除数据

8.2.7 获取数据

8.2.8 性能对比案例

8.3 ConcurrentLinkedDeque

8.3.1 概述

8.3.2 核心成员变量

8.3.3 重要内部类

8.3.4 初始化

8.3.5 添加数据

8.3.6 删除数据

8.3.7 获取数据

8.3.8 性能对比案例

第9章 并发工具类

9.1 CountDownLatch工具类

9.1.1 概述及重要方法说明

9.1.2 使用案例

9.2 CyclicBarrier工具类

9.2.1 概述及重要方法说明

9.2.2 使用案例

9.3 Phaser工具类

9.3.1 概述及重要方法说明

9.3.2 使用案例

9.4 Semaphore工具类

9.4.1 概述及重要方法说明

9.4.2 使用案例

9.5 Exchanger工具类

9.5.1 概述及重要方法说明

9.5.2 使用案例

第10章 锁工具类

10.1 Lock接口

10.1.1 概述及核心方法

10.1.2 使用案例

10.2 Condition接口

10.2.1 概述及核心方法

10.2.2 使用案例

10.3 ReentrantLock可重入锁

10.3.1 概述及核心方法

10.3.2 使用案例

10.4 ReadWriteLock读写锁

10.4.1 概述及核心方法

10.4.2 使用案例

10.5 StampedLock读写锁

10.5.1 概述及核心方法

10.5.2 StampedLock使用案例

10.6 锁性能对比案例

10.6.1 案例需求

10.6.2 案例实现

10.6.3 案例测试

第11章 无锁原子类

11.1 无锁原子类概述及分类

11.2 操作基本类型的原子类

11.2.1 概述

11.2.2 AtomicInteger类核心方法解析

11.3 操作引用类型的原子类

11.3.1 概述

11.3.2 AtomicReference类核心方法解析

11.4 操作字段类型的原子类

11.4.1 概述

11.4.2 AtomicReferenceFieldUpdater类核心方法解析

11.5 操作数组类型的原子类

11.5.1 概述

11.5.2 AtomicLongArray类核心方法解析

11.6 累加器类型的原子类

11.6.1 概述

11.6.2 LongAdder类核心方法解析

11.7 性能对比案例

11.7.1 锁与基本类型原子类性能对比案例

11.7.2 锁与引用类型原子类性能对比案例

11.7.3 锁与字段类型原子类性能对比案例

11.7.4 AtomicLong与LongAdder性能对比案例

第12章 线程工具类

12.1 Thread类

12.1.1 继承关系

12.1.2 定义

12.1.3 核心代码解析

12.2 ThreadLocal类

12.3 Fork/Join框架

12.3.1 概述

12.3.2 核心类

12.4 线程工具类案例

12.4.1 Thread类线程中断案例

12.4.2 Fork/Join框架分组合并案例

第13章 异步编程工具类

13.1 Callable接口

13.1.1 概述

13.1.2 PrivilegedCallable实现类

13.1.3 PrivilegedCallableUsingCurrentClassLoader实现类

13.1.4 RunnableAdapter实现类

13.1.5 TaskCallable实现类

13.2 异步编程接口

13.2.1 两种异步模型

13.2.2 Future接口

13.2.3 RunnableFuture接口

13.2.4 FutureTask类

13.3 CompletableFuture类

13.3.1 概述

13.3.2 初始化

13.3.3 串行执行任务

13.3.4 并行执行任务

13.3.5 AND聚合任务

13.3.6 OR聚合任务

13.3.7 处理结果

13.3.8 使用案例

13.4 CompletionService

13.4.1 概述

13.4.2 接口定义

13.4.3 ExecutorCompletionService类的核心实现

13.4.4 使用案例

线程池核心技术篇

第14章 线程池总体结构

14.1 线程池简介

14.1.1 线程池核心类继承关系

14.1.2 线程池的优点

14.1.3 Executors类

14.1.4 ThreadPoolExecutor类

14.2 线程池顶层接口和抽象类

14.2.1 接口和抽象类总览

14.2.2 Executor接口

14.2.3 ExecutorService接口

14.2.4 AbstractExecutorService抽象类

14.2.5 ScheduledExecutorService接口

第15章 线程池核心流程

15.1 线程池正确运行的核心流程

15.1.1 ThreadPoolExecutor类的重要属性

15.1.2 ThreadPoolExecutor类的重要内部类

15.2 线程池执行任务的核心流程

15.2.1 核心流程概述

15.2.2 execute()方法解析

15.2.3 addWorker()方法解析

15.2.4 addWorkerFailed()方法解析

15.2.5 拒绝策略执行流程

15.3 Worker线程的核心流程

15.3.1 Worker线程的核心流程概述

15.3.2 runWorker()方法解析

15.3.3 getTask()方法解析

15.3.4 beforeExecute()方法解析

15.3.5 afterExecute()方法解析

15.3.6 processWorkerExit()方法解析

15.3.7 tryTerminate()方法解析

15.3.8 terminated()方法解析

15.4 线程池优雅退出的核心流程

15.4.1 shutdown()方法解析

15.4.2 shutdownNow()方法解析

15.4.3 awaitTermination()方法解析

第16章 定时任务线程池

16.1 ScheduledThreadPoolExecutor类与Timer类的区别

16.1.1 线程实现的区别

16.1.2 系统时间的区别

16.1.3 处理异常的区别

16.1.4 任务编排的区别

16.1.5 任务优先级的区别

16.1.6 返回结果的区别

16.2 定时任务线程池的初始化

16.3 定时任务线程池的调度流程

16.3.1 schedule()方法解析

16.3.2 decorateTask()方法解析

16.3.3 scheduleAtFixedRate()方法解析

16.3.4 scheduleWithFixedDelay()方法解析

16.3.5 riggerTime()方法解析

16.3.6 overflowFree()方法解析

16.3.7 delayedExecute()方法解析

16.3.8 reExecutePeriodic()方法解析

16.4 定时任务线程池优雅关闭流程

后折页

累计评论(条) 个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部