当前位置: 首页 > news >正文

《Java多线程编程核心技术》迎来重大更新

16e91a8d30e77f61e72c9b6f62520bb4.gif

不管是学习JavaSE、JavaEE、JavaWeb,还是学习Java大数据、Java移动开发、Java分布式、Java微服务,“多线程编程”都是必不可少的核心技术点。

《Java多线程核心技术》是首本多线程技术书,自第1版和第2版出版以来,获得了广大Java程序员与学习者的关注,在技术论坛、博客、公众号等平台涌现了大量针对Java多线程技术的讨论与分享。

然而本书第1版和第2版出版时,基于Java的分布式/微服务技术还没有强调性能的想法,只是单纯地实现RPC远程调用即可,但随着分布式/微服务技术的稳定与推广,我们发现,单机的性能其实仍是分布式/微服务需要关注的基本点,因为只有单机运行环境的性能上去了,分布式/微服务的整体性能才能得到大幅度的提高,而在这中间一定会涉及两个技术点:数据的组织和线程的管理

掌握了这两个技术点,读者就可以自己实现消息队列,实现对数据的入队和出队的管理,这完全可以由现成的Java并发包中的并发集合工具类实现,不需要自己编写代码,从而大大提升了程序员的开发效率,避免了程序员自己重复造轮子的现象。

随着IT业务与技术日新月异,开发环境与读者需求不断更新,本书内容也随之全面升级。《Java多线程核心技术》第3版,新增适合微服务与分布式开发的并发集合框架与Java线程池知识 ,并丰富强化了上一版的经典内容。全面剖析多线程编程的核心库、方法、原理,利用案例方式,透彻讲解高并发本质与应对方法。

51d7306184076a44d28c56cfc74bbdbf.png61335c990706c854adf5250aee2ab318.png

扫码查看更多↑

本书特色

本书全部以Demo式案例来讲解技术点的实现,使读者看到代码及运行结果后就可以知道该项目要解决的是什么问题,类似于网络中博客的风格,让读者用最短的时间学习知识点,明白知识点如何应用,以及在使用时要避免什么,从而快速学习并解决问题。

读者对象

Java程序员、系统架构师、Java多线程开发者、Java并发开发者、大数据开发者、其他对多线程技术感兴趣的人员

更新内容

第3版新增了以下内容:
第8章,解析并发集合框架,善加利用必能提升开发者的开发效率;
第9章,详解线程池的使用,让线程管理更规范、高效。

其他章节的更新如下:
第1章,丰富了JDK中Thread类的API;
第2章,强化了多线程理论基石“栅栏”的解释与代码实现;
第3章,增加了volatile关键字的多种使用技巧,以及基于并发包的线程间通信的深入解读;
第5章,以更简洁的代码优化了定时器案例;
第7章,深度讲解了Java线程状态切换。

本书结构

本书本着实用、易懂的原则,用9章来介绍Java多线程相关的技术。

  • 第1章讲解Java多线程的基础知识,包括Thread类的核心API的使用。

  • 第2章讲解在多线程中通过synchronized关键字对并发访问进行控制的方法,为读者学习同步知识打好坚实的基础。

  • 第3章介绍线程间通信,以在多线程中进行数据传递。

  • 第4章介绍并发访问时的同步处理实现,包括读写锁(Lock对象)等相关技术点。

  • 第5章剖析定时器Timer类的内部原理。定时器在Android开发中会有深入应用,是很重要的技术点。

  • 第6章介绍单例模式下多线程的全面解决方案。

  • 第7章对前面遗漏的知识点进行补充,使多线程的知识体系更加完整,尽量做到不出现技术空白点。

  • 第8章介绍并发集合框架,可以大大提升开发多线程应用程序的效率。

  • 第9章介绍线程池的使用,让线程管理更规范、高效。这也是Java程序员面试必问的技术点。

关于作者

高洪岩,某世界500强公司项目经理,有10年Java开发和项目管理经验,精通Java语言,擅长Java EE、分布式、微服务、高性能服务器架构、智能报表、多线程和高并发相关的技术内容,理论与实践经验颇丰,也积极参与开源项目的开发与设计,涉及Dubbo、Jedis、Pulsar、ZooKeeper等主流开源项目。

著有《Java多线程编程核心技术》《Java并发编程:核心方法与框架》《NIO与Socket编程技术指南》《Java EE核心框架实战(第2版)》等多本图书。

a3256ac588258608821d18f87336b3b5.gif

08498a1afcc35494aed9ce2f7cb8fbee.png

扫码关注【华章计算机】视频号

每天来听华章哥讲书

1e1806e8062048b9ffb7aafc4dde934c.gif

更多精彩回顾

书讯 | 2月书讯(下)| 新年到,新书到!

书讯 | 2月书讯 (上)| 新年到,新书到!

资讯 | Python迎来31岁生日,蝉联年度编程语言排行榜冠军

书单 | 成为优秀Java开发者,我看了这几本书

干货 |一文带你掌握计算机体系结构核心内容

收藏 | 终于有人把大数据、机器学习、数据科学讲明白了

上新 | 深入浅出隐私计算:技术解析与应用实践

资讯 |云原生时代,阿里如何让Java冷启动提速两个数量级?

赠书 | 【第94期】存储系统又慢又杂太难用?我们推荐这几本书帮你解决问题

5c0e37bef10f9c52dc58f34f75b37e09.gif

1133fe97c2a3aad04159ae561ae3f44b.gif

点击阅读全文购买

相关文章:

  • 又又叒更新,Win 12要来了?
  • 解读边缘计算在7大领域的研究趋势和最新进展
  • 【第95期】东数西算是什么?如何实现东数西算?
  • 国际数学日 | 有π的日子,来一场数学派对
  • Unity3D高级编程:主程手记
  • 详解SaaS产品的5类核心指标
  • Java到底能干什么?有哪些实际用途?
  • 微服务治理框架的选择:对比Spring Cloud和Istio
  • C++都有哪些就业方向?是否应该学习C++?
  • 实战案例,手把手教你构建电商用户画像 | 附代码
  • 两大图灵奖得主力作:计算机架构的新黄金时代
  • 首次公开,用了三年的 pandas 速查表!
  • 提升研发效能:抵制无效加班文化
  • 云边协同下的数据处理模式有何不同?
  • 如何在ClickHouse中使用EmbeddedRocksDB表引擎
  • [数据结构]链表的实现在PHP中
  • 【402天】跃迁之路——程序员高效学习方法论探索系列(实验阶段159-2018.03.14)...
  • 【面试系列】之二:关于js原型
  • 【刷算法】求1+2+3+...+n
  • avalon2.2的VM生成过程
  • crontab执行失败的多种原因
  • Docker下部署自己的LNMP工作环境
  • Git学习与使用心得(1)—— 初始化
  • HTTP 简介
  • mysql innodb 索引使用指南
  • Python十分钟制作属于你自己的个性logo
  • SQLServer之创建显式事务
  • Vue--数据传输
  • Webpack4 学习笔记 - 01:webpack的安装和简单配置
  • 诡异!React stopPropagation失灵
  • 基于Android乐音识别(2)
  • 聚类分析——Kmeans
  • 山寨一个 Promise
  • 小程序开发之路(一)
  • 一个SAP顾问在美国的这些年
  • Linux权限管理(week1_day5)--技术流ken
  • 昨天1024程序员节,我故意写了个死循环~
  • ​软考-高级-信息系统项目管理师教程 第四版【第14章-项目沟通管理-思维导图】​
  • #微信小程序:微信小程序常见的配置传旨
  • $emit传递多个参数_PPC和MIPS指令集下二进制代码中函数参数个数的识别方法
  • (22)C#传智:复习,多态虚方法抽象类接口,静态类,String与StringBuilder,集合泛型List与Dictionary,文件类,结构与类的区别
  • (M)unity2D敌人的创建、人物属性设置,遇敌掉血
  • (WSI分类)WSI分类文献小综述 2024
  • (初研) Sentence-embedding fine-tune notebook
  • (附源码)springboot人体健康检测微信小程序 毕业设计 012142
  • (附源码)ssm本科教学合格评估管理系统 毕业设计 180916
  • (离散数学)逻辑连接词
  • (一)VirtualBox安装增强功能
  • (转载)Linux网络编程入门
  • .net Application的目录
  • .NET 应用启用与禁用自动生成绑定重定向 (bindingRedirect),解决不同版本 dll 的依赖问题
  • .NETCORE 开发登录接口MFA谷歌多因子身份验证
  • .NET建议使用的大小写命名原则
  • .sdf和.msp文件读取
  • ??javascript里的变量问题