java多线程: 子线程循环10次,主线程接着循环100次,如此循环50次
2017-04-01 00:21
507 查看
package com.view04.alternate.print; /** * 子线程循环10次,主线程接着循环100次,如此循环50次的问题 * @author zhaojw_420 * */ public class AlternateThread { public static void main(String[] args) { final Bussies bussies=new Bussies(); MainThread mainThread=new MainThread(bussies); SubThread subThread=new SubThread(bussies); Thread main=new Thread(mainThread,"主线程"); Thread sub=new Thread(subThread,"子线程"); main.start(); sub.start(); } } class Bussies{ private boolean flage=true; //flage为true时打印主线程,为false时打印子线程 public void main(){ synchronized(this){ while (!flage) { try { this.wait(); //为false时等待 } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } } for (int i = 0; i < 100; i++) { System.out.println(Thread.currentThread().getName()+"执行了第"+(i+1)+"次"); } flage=false; this.notifyAll(); } } public void sub(){ synchronized(this){ while (flage) { try { this.wait();//如果为true则等待 } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } } for (int i = 0; i < 10; i++) { System.out.println(Thread.currentThread().getName()+"执行了第"+(i+1)+"次"); } flage=true; this.notifyAll(); } } } //主线程 class MainThread implements Runnable{ private Bussies bussies; public MainThread(Bussies bussies) { this.bussies = bussies; } public Bussies getBussies() { return bussies; } public void setBussies(Bussies bussies) { this.bussies = bussies; } @Override public void run() { for(int i=0;i<50;i++){ bussies.main(); } } } //子线程 class SubThread implements Runnable{ private Bussies bussies; public SubThread(Bussies bussies) { this.bussies = bussies; } public Bussies getBussies() { return bussies; } public void setBussies(Bussies bussies) { this.bussies = bussies; } @Override public void run() { for(int i=0;i<50;i++){ bussies.sub(); } } }
相关文章推荐
- java一道多线程题,子线程循环10次,主线程接着循环100次,如此循环50次的问题
- (13)多线程与并发库之java5阻塞队列(BlockingQueue)的应用----子线程循环10次,接着主线程循环100次,接着又回到子线程循环10次,接着再回到主线程循环100次,如此循环50次
- (13)多线程与并发库之java5阻塞队列(BlockingQueue)的应用----子线程循环10次,接着主线程循环100次,接着又回到子线程循环10次,接着再回到主线程循环100次,如此循环50次
- java多线程笔试题:子线程循环10次;接着主线程循环20次,接着又子线程循环10次,接着再回到主线程又循环20次,如此循环50次,请写出程序。
- 多线程面试题:子线程循环10次,接着主线程循环100次;接着回到子线程循环10次,然后再回到主线程循环100次,如此交替50次。
- Java多线程面试题:子线程循环10次,接着主线程循环100,接着又回到子线程循环10次, 接着再回到主线程又循环100,如此循环50次
- 子线程循环10次,接着主线程循环100次,接着又回到子线程循环10次,接着再回到主线程100次,如此循环50次
- 面试题:子线程循环10次,接着主线程循环100次,接着又回到子线程循环10次,接着再回到主线程循环100次,如此循环50次,请写出程序
- 多线程学习--案例-子线程循环10次,接着主线程循环100,接着又回到子线程循环10次,接着再回到主线程又循环100,如此循环50次
- 【Java面试题】30 子线程循环10次,接着主线程循环100,接着又回到子线程循环10次,接着再回到主线程又循环100,如此循环50次,请写出程序。
- 子线程循环10次,接着主线程循环5次,接着又回到子线程循环10次,接着再回到主线程又循环5次,如此循环50次,请写出程序。
- 传统线程通信(子线程运行10次,主线程运行100次,如此循环50次)
- 并发包实现:机试题-〉子线程循环10次,接着回到主线程循环100次,又接着回到子线程循环10次,再接着回到主线程又循环100次,如次循环50次,请写出程序
- 子线程循环10次 主线程循环100次 然后如此反复50次
- 子线程循环10次,接着主线程循环100,接着又回到子线程循环10次,接着再回到主线程又循环100,如此循环50次,请写出程序
- 子线程循环10次,接着主线程循环100,接着又回到子线程循环10次,接着再回到主线程又循环100,如此循环50次
- 子线程运行10次后,主线程运行100次,子主交叉运行。如此循环50次。
- 线程通信(子线程运行10次,主线程运行100次,如此循环50次)[用condition替代wait,notify等待和唤醒操作]
- 子线程循环10次,接着主线程循环100,接着又回到子线程循环10次.....如此循环50次
- 子线程循环10次,接着主线程循环100,接着又回到子线程循环10次,接着再回到主线程又循环100,如此循环50次.