java并发实战手册第三章(线程同步辅助类介绍)

  java并发实战手册第三章---线程同步辅助类简介

在第二章中我们学习了同步和临界区的概念。并且讨论了多个并发任务共享一个资源时的同步情况。这个共享资源可以是一个对象也可以是一个对象的一个属性。访问共享资源的代码叫做临界区

  • 第二章回顾(基本的同步机制)
  • synchronized关键字
  • Lock接口以及其实现类:如ReentrantLock,ReentrantReadWriteLock.ReadLock,和ReentrantReadWriteLock.WriteLock
  • 在锁中使用条件Condition
  • 在线程中使用Object类中的wati(),notify(),notifyAll()方法。

  • 第三章内容简介

  • 在本章中学习如何使用更高级的同步机制来实现多线程间的同步
  • 1.信号量(Semaphore):一种计数器,用来保护一个或者多个共享资源的访问,是并发编程的一种基础工具,大多数编程语言都提高了这种机制。
  • 2.CountDownLacth: java语言提供的一种同步辅助类,在完成一组正在其他线程中执行的操作之前,允许线程一直等待。
  • 3.CyclicBarrier: java语言提供的一种同步辅助类,允许多个线程在某个集合点(common point)处相互等待。
  • 4.Phaser:java语言提供的同步辅助类,把并发任务分成多个阶段运行,在开始下一个阶段之前,当前阶段中的所有线程都必须执行完成。java 7 API中的新特性。
  • 5.Exchanger: 同步辅助类,提供了两个线程之间的数据交换点。

    说明:在应用程序中,任何时候都可以使用Semaphore信号量来保护临界区,因为它是一个基础的同步机制,而其他的同步机制,则需要根据各自的上述特性来对其选择使用。所以我们需要根据应用程序的特性来选择合适的同步机制。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值