评论:Java 7并发食谱


Java 7 Concurrency Cookbook

Java 7 Concurrency Cookbook包含60多个示例,向您展示了如何在Java中进行多线程编程。 它显示了从初级到高级的各种线程主题,包括创建,中断和监视线程之类的线程管理,使用Java 5 Executor框架运行或调度线程以及最新的Java 7 fork/Join框架来分发线程。

我最喜欢的是第3章,其中显示了5个常见的并发机制或模式的示例-“ 信号量 ”,“ CountDownLatch ”,“ CyclicBarrier ”,“ Phaser ”和“ Exchanger ”,以及这些机制如何解决现有的线程问题。 另外,在本章的最后,它展示了如何在Eclipse和NetBeans中测试Java并发代码,这使我感到惊讶。

请参阅以下部分,以了解您将从这本书中学到什么。

第1章:线程管理

Hello world一章中有许多有用的示例,向您展示了线程管理的基本知识。

学到的技能:

  1. 如何创建,中断,休眠和恢复线程。
  2. 如何编写守护程序线程。
  3. 如何处理线程异常。
  4. 如何将线程分组。

第2章:基本线程同步

线程同步可控制多个线程如何读写相同的数据,文件或数据库(共享资源),

学到的技能:

  1. 如何使用synchronized关键字来同步方法。
  2. 如何使用Lock接口及其实现来同步代码块。
  3. 如何使用wait()notify()notifyAll()在同步代码中执行单个/多个条件。

第3章:线程同步实用程序

这些示例向您展示了五个同步多个线程的常见并发机制或模式,以及正在解决的问题。

学到的技能:

  1. 信号量 –一种计数器,用于控制对一个或多个共享资源的访问。
  2. CountDownLatch –允许线程等待多个操作的完成。
  3. CyclicBarrier –允许在一个公共点同步多个线程。
  4. 移相器 –控制按阶段划分的并发任务的执行。
  5. Exchanger –提供两个线程之间的数据交换点。

第4章:线程执行器

如何使用Java 5,Executor框架ExecutorThreadPoolExecutor等。与调度程序一样,它可以在指定的时间或间隔运行单个或多个线程。

学到的技能:

  1. 如何创建线程执行器
  2. 延迟后如何运行任务。
  3. 如何定期运行任务。
  4. 如何控制任务的完成或取消。

第5章:Fork / Join框架

新的Java 7 Fork / Join框架

学到的技能:

  1. 什么是Java 7 Fork / Join框架,以及一个简单的hello world示例。
  2. 如何将分割后的任务的结果结合起来。
  3. 如何取消任务。

第6章:并发收集

介绍在并发编程中使用的Java集合。

学到的技能:

  1. 什么是阻塞和非阻塞集合。
  2. 使用阻塞和非阻塞线程安全列表的示例。
  3. ConcurrentNavigableMap示例。
  4. 如何使用ThreadLocalRandom生成并发随机数。
  5. 如何使用原子变量(例如AtomicLong )和原子数组(例如AtomicIntegerArray

第7章:自定义并发类

本章介绍如何自定义现有的并发类以满足您的需求。 通常,您不需要这个,但是很高兴知道。

学到的技能:

  1. 实施基于优先级的Executor
  2. 如何使用ThreadFactory
  3. 定制在计划的线程池和Fork / Join框架中运行的任务。
  4. 如何实现自定义Lock类。
  5. 如何实现自己的原子对象。

第8章:测试并发应用程序

本章介绍如何在并发程序中进行测试。

学到的技能:

  1. 如何监视LockPhaserExecutor框架和Fork / Join池。
  2. 如何配置Eclipse和NetBeans以调试并发代码。
  3. 如何使用FindBugs分析并发代码

结论

本书包含许多易于遵循的示例,并且在每个示例的末尾都有详尽的解释,第6章和第7章除外,这需要一些线程背景知识才能理解。 对于想学习Java线程的初学者来说,这本“ Java 7并发性烹饪书 ”是学习的最佳书。 对于经验丰富的开发人员,您也可以将其视为“ Java并发性”的完整参考。

如果与实践中的经典Java并发相比,该怎么办? 我认为这两本书都是针对不同开发人员级别的。 恕我直言,经典的“实践中的Java并发性”是针对高级级别的,其摘要代码后跟着几页说明,虽然很棒,但并不适合任何人。 而且此Java 7 Concurrency Cookbook适用于初学者和入门级读者,该示例易于理解,可以随时修改以供您的项目使用。

注意
该Java 7并发食谱可以通过amazon.compacktpub.com在线购买。

参考文献

  1. Oracle Java并发教程
  2. Java 7 fork / join框架

翻译自: https://mkyong.com/book-review/review-java-7-concurrency-cookbook/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值