(JAVA)多线程之wait()与notify()

/*** @author Alina* @date 2021年12月22日 12:17 上午**/
class Student{String name;String sex;boolean flag = false;}
class Product implements Runnable{Student s ;Product(Student s ){this.s = s;}public void run(){int x = 0;//通过奇数偶数进行赋值while(true){synchronized (s){if(s.flag){try {s.wait();}catch (Exception e){}}if (x%2 == 1){s.name = "张三";s.sex = "男";}else {s.name = "李四";s.sex = "女";}x++;s.flag = true;s.notify();}}}
}
class Custom implements Runnable{Student s;Custom(Student s ){this.s = s;}public void run(){synchronized (s){while (true){if(!s.flag){try{s.wait();}catch (Exception e){}}System.out.println(s.name+"..."+s.sex);s.flag = false;s.notify();}}}}
public class SourceThreadDemo {public static void main(String[] args) {Student s = new Student();new Thread(new Product(s)).start();new Thread(new Custom(s)).start();}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/421707.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

c语言把int指针强制转换成void指针_神一般的C语言指针,你看懂多少?

下面,做个测试,如果下面的指针问题你能够全都解答正确,那么你的C语言功底真是神一般的了。http://1.int *p;http://2.int **p;http://3.int *p[10];http://4.int (*p)[10];http://5.int *p(int);http://6.int (*p)(int);http://7.int (*p[10]…

基于混合云存储系统的电影推荐引擎小结

基于混合云存储系统的电影推荐引擎 推荐算法部分是Mahout下的Taste实现的, 数据集采用GroupLens 的数据集合,将这些数据集转换到mysql数据库中 其中Taste:http://mahout.apache.org/ GroupLens数据集:http://www.grouplens.org/n…

机器学习里面的基函数_厉害了!机器学习用到SSD里面

近年来人工智能和大数据的迅速发展正在深刻改变着这个世界和我们的生活方式。人工智能的核心是机器学习(Machine Learning) 算法,自 2006 年以来,在机器学习领域,以深度学习(Deep Lerning) 为代表的机器学习算法取得了突破性的进展&#xff0…

【好用的ORM框架】

对于开发采用orm会带来很大便利,orm即是数据表和实体对于关系框架。内部封装增删改查。它不仅适用于mvc,而且在winform和webform都适用。下面具体介绍orm是使用: 初步在winform为例使用,随后在在mvc大量运用: 1&#x…

愤怒的小鸟4只编外鸟_加西亚时隔三年夺美巡第11冠,马尔纳蒂9鸟单独第二

桑德森农场锦标赛战罢,第三轮并列领先的西班牙名将加西亚决赛轮打出5鸟1鹰2柏忌,以-19(68-68-66-67)的总成绩1杆优势夺冠,结束了三年的冠军荒。后来居上的马尔纳蒂决赛轮狂抓9鸟没有吞下一个柏忌,收获了职业生涯最低杆63杆&#x…

pgslq表的字段类型,如何在PostgreSQL中获取表的列表列名称和数据类型?

With the following query, we can get a list of column names and datatype of a table in PostgreSQL.解决方案SELECTa.attname as "Column",pg_catalog.format_type(a.atttypid, a.atttypmod) as "Datatype"FROMpg_catalog.pg_attribute aWHEREa.attnu…

【Linux操作系统分析】设备驱动处理流程

1 驱动程序,操作系统,文件系统和应用程序之间的关系 字符设备和块设备映射到操作系统中的文件系统,由文件系统向上提供给应用程序统一的接口用以访问设备。 Linux把设备视为文件,称为设备文件,通过对设备文件的读写操作…

C语言基础之数据结构

1.32 换成数字23 # include<stdio.h> //编译预处理指令 # include <math.h> # define pi 3.1415926 //定义不变常量 int convert(int num); char ABC(char a); double sum(double a,double b, double c); double area(double a,double b, double c); double num(…

硬件描述语言复习笔记

第一章 1、控制复杂性的艺术&#xff1a; A、抽象&#xff1a;管理复杂性的关键技术在于抽象即隐蔽不重要的细节 B、约束&#xff1a;对设计选择的一种内在限制&#xff0c;目的是为了可以更有效的在更高的抽象层 次上工作 C、三条原则&#xff1a; 层次化&#xff1a;一个系统…

C语言输出格式

1 一般格式printf(格式控制&#xff0c;输出表列&#xff09;例如&#xff1a;printf("i%d,ch%c\n",i,ch);说明:(1)“格式控制”是用双撇号括起来的字符串&#xff0c;也称“转换控制字符串”&#xff0c;它包括两种信息&#xff1a;①格式说明&#xff1a;由“%”和…

(Java)反射与文档注释

package com.reflect.test;/*** author Alina* date 2022年02月01日 6:09 下午*/ public class Demo1 {public void method(){System.out.println("Demo1...method");} } package com.reflect.test;import java.lang.annotation.ElementType; import java.lang.anno…

JQ基础练习---图片划过变暗

简单分享下&#xff0c;划过一张图片其余图片变暗&#xff0c;图片划过变暗的简单效果&#xff0c;JQ实现主要是css写法跟思路变化。 <script src"http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js" type"text/javascript"></sc…

postman启动没反应_Linux 0.12上古源码学习(二)-Bochs模拟Linux 0.12内核的启动与运行...

上篇已经初步实现用Bochs仿真了一个X86程序。今天尝试启动早期的Linux 0.12内核。官网上已经有编译好的Linux 0.12启动镜像及根文件系统镜像。我们可以直接下载下来先使用&#xff0c;后面的文章会详细介始如何编译生成这些镜像文件。Index of /Linux.old/bochs-images/​www.o…

vscode 搭建web工程_Dubbo 分布式架构搭建教育 PC 站

架构设计与环境搭建项目架构项目介绍教育 PC 站是提供给学员观看技术视频的网站。学员使用手机号注册登录后&#xff0c;可以选择适合自己的课程&#xff0c;并观看课程视频&#xff0c;当然&#xff0c;有免费的课程&#xff0c;也有 VIP 专属课程。技术选型前端技术选型Vue.j…