2020-03-23-Java

1.回顾

在继承Thread类创建线程方法中,是否可以通过synchronized来实现并发编程。(多个线程操作一段代码,保证代码执行过程安全。)
【案例】


image.png

MyThread.java


image.png

image.png

MyTest.java
image.png

2.基于方法加锁的做法

语法:
public synchronized 返回值 method(){
//body
}
快捷方法:


image.png

【案例】
MyThread2.java


image.png

image.png

3.线程同步编程模式

thread的api:
wait(),让当前代码执行停下来等待。
notify(),将执行权通知给其他线程。
【案例】模拟2个人相当于2个线程,A刷牙占用卫生间,A让出卫生间,B刷牙,B让出卫生间,A洗手,A让出卫生间,B洗手。
分析:每个人都干两件事,一件事结束,让另一个人干一件事,再让出来,再换人执行。
项目结构:


image.png

Person.java


image.png

image.png

image.png

image.png

image.png

MyTest.java
image.png

日志:
image.png
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 本文主要讲了java中多线程的使用方法、线程同步、线程数据传递、线程状态及相应的一些线程函数用法、概述等。 首先讲...
    李欣阳阅读 2,510评论 1 15
  • Java多线程学习 [-] 一扩展javalangThread类 二实现javalangRunnable接口 三T...
    影驰阅读 2,998评论 1 18
  • 林炳文Evankaka原创作品。转载自http://blog.csdn.net/evankaka 本文主要讲了ja...
    ccq_inori阅读 671评论 0 4
  • 一扩展javalangThread类二实现javalangRunnable接口三Thread和Runnable的区...
    和帅_db6a阅读 502评论 0 1
  • 本文出自 Eddy Wiki ,转载请注明出处:http://eddy.wiki/interview-java.h...
    eddy_wiki阅读 2,250评论 0 14