文章标题
来源:互联网 发布:2015淘宝双十一销售额 编辑:程序博客网 时间:2024/06/14 13:24
package day5;public class WaitNotify { public static void main(String[] args) { MyserviceNew my = new MyserviceNew(); ThreadM th1 = new ThreadM(my); th1.start(); ThreadN th2 = new ThreadN(my); th2.start(); }}class MyserviceNew{ public static int value = 0; //false代表前一个线程都在等待该线程打印 boolean flag =false;}class ThreadM extends Thread{ MyserviceNew myservice; public ThreadM(MyserviceNew myservice) { this.myservice = myservice; } @Override public void run() { synchronized(myservice) { while(MyserviceNew.value<100) { //System.out.println("even"); if(!myservice.flag) { MyserviceNew.value++; System.out.println("奇数"+MyserviceNew.value); myservice.flag = true ; myservice.notify(); try { myservice.wait(); } catch (InterruptedException e) { e.printStackTrace(); } }else { try { myservice.wait(); } catch (InterruptedException e) { e.printStackTrace(); } } } } }}class ThreadN extends Thread{ MyserviceNew myservice; public ThreadN(MyserviceNew myservice) { this.myservice = myservice; } @Override public void run() { synchronized(myservice) { while(MyserviceNew.value<100) { //System.out.println("odd"); if(myservice.flag) { MyserviceNew.value++; System.out.println("偶数"+MyserviceNew.value); myservice.flag = false; try { myservice.notify(); myservice.wait(); } catch (InterruptedException e) { e.printStackTrace(); } //myservice.flag = false; }else { try { myservice.wait(); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } } }}
阅读全文
0 0
- 文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题 文章标题 文章标题 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- Android 通知栏(适应不同版本解决方案)
- java生成32位的UUID
- laravel框架 安装使用配置
- 加载所有配置文件
- BZOJ 1082 栅栏 (二分 剪枝搜索)
- 文章标题
- codeforces 855B DP
- 八大排序算法之选择排序
- linux命令简单介绍以及使用
- 【Elasticsearch】1环境
- 百分比布局
- JavaScript的NaN为什么不等于NaN
- python之if语句
- 多线程(三)--多线程间通信