首页 > 学院 > 开发设计 > 正文

主线程执行10,子线程执行10.交替执行50次结束

2019-11-06 07:04:22
字体:
来源:转载
供稿:网友
package com.zhlk.thread;public class TraditionalThreadCommunities {	/**	 * 创建日期:2017-3-5下午7:03:53 作者:lvguanghui	 */	public static void main(String[] args) {		final Business business=new Business();		new Thread(new Runnable() {			@Override			public void run() {				for (int i = 1; i <= 50; i++) {				    business.sub(i);				}			}		}).start();	  for (int i = 1; i <= 50; i++) {                   business.main(i);	  }	} }  class Business{	  PRivate boolean bShouleSub=true;	  public synchronized  void sub(int i){		  while(!bShouleSub){		     try {				this.wait();							} catch (InterruptedException e) {				// TODO Auto-generated catch block				e.printStackTrace();			}		  }		   for (int j = 1; j <= 10; j++) {				System.out.println("sub thread squence of " + j						+ " loop of " + i);			}		   bShouleSub=false;			this.notify();		  	  }	  public synchronized  void main(int i){		  while(bShouleSub){			  try {				this.wait();			} catch (InterruptedException e) {				// TODO Auto-generated catch block				e.printStackTrace();			}		  }	  	  for (int j = 1; j <= 10; j++) {				System.out.println("main thread squence of " + j						+ " loop of " + i);			}	  	  bShouleSub=true;           this.notify();	  }  }
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表