美文网首页
Java高并发程序设计2

Java高并发程序设计2

作者: xinxinlimin | 来源:发表于2017-10-24 20:47 被阅读0次

本章主要学习下Object下针对线程的wait与notify、notifyAll方法。

前言:

thread作为线程类,主要有start、run、yield、join、interrupt等方法。而wait与notify虽然保护其中,但是继承自object,所以不能算是线程方法。

上文讲了多个线程协作,以及协作的处理,主要用到thread的方法。本节针对监听器(锁)而言,是解决线程同步问题。wait释放锁,sleep不会释放锁。

开始:
假设有个银行类,内含取钱与存取两个方法。同时有成员变量money。主类中建立两个线程t1、t2访问(共三个线程)。

wait表示当一个对象调用wait后(必须在锁内),当某个线程抢占锁进入后便释放锁(即释放这部分方法或者块让其他线程占有)。

notify表示通知对列(不公平)中的某一个(随机)启动占有资源(锁),一定注意:锁的是资源,跟线程没关系

用法:

共四个类(一个实体sample类,一个减法线程类,一个加法线程类,一个主类)。

实现0101的数字游戏。wait与notify都会释放监听器

相关文章

  • 后端好书阅读与推荐

    实战Java高并发程序设计 实战Java高并发程序设计 (豆瓣)https://book.douban.com/s...

  • 高并发Java

    高并发Java(1):前言 高并发Java(2):多线程基础 高并发Java(3):Java内存模型和线程安全 高...

  • 并行模式与算法

    java高并发程序设计 - 网易云课堂 一、单例模式 高并发情况下的单例模式 public class Stati...

  • Java高并发程序设计2

    本章主要学习下Object下针对线程的wait与notify、notifyAll方法。 前言: thread作为线...

  • Java并发之JDK并发包(3)

    实战Java高并发程序设计笔记 分而治之:Fork/Join框架 ForkJoinPool线程池,对于fork而言...

  • Java[多线程]-《实战Java高并发程序设计》多线程并发处理

    实战Java高并发程序设计(葛一鸣,郭超)读书笔记 获取方式:http://www.java1234.com/a/...

  • JDK并发包

    java高并发程序设计 - 网易云课堂 一、重入锁 重入锁是synchronized,Object.wait(),...

  • 多线程入门1

    !改文章的图片来自java高并发程序设计这本书 并发和并行 并发: 主要是指多个任务交替执行。而且这个情况可能出现...

  • Java并发编程-线程基础

    参考资料:《Java高并发程序设计》 1.线程的基本操作 1.新建线程 1.继承Thread,重写run方法 2....

  • 重入锁的Condition

    java高并发程序设计 - 网易云课堂 Condition对象类似于wait(),notify()方法,只是con...

网友评论

      本文标题:Java高并发程序设计2

      本文链接:https://www.haomeiwen.com/subject/kywxpxtx.html