/*** 改造之前的程序,用两个具有1个空间的队列来实现同步通知的功能
* 使用阻塞队列实现
* 子线程循环10次,接着主线程循环100次,接着又回到子线程循环10次,接着又 主线程循环100次,如此循环50次,请写出程序
*
*@authorAdministrator
**/
public classBlockingQueueCommunication {public static voidmain(String[] args) {final Business5 business = newBusiness5();new Thread(newRunnable() {
@Overridepublic voidrun() {for (int i = 1; i <= 50; i++) {
business.sub(i);
}
}
}).start();for (int i = 1; i <= 50; i++) {
business.main(i);
}
}static classBusiness5 {
BlockingQueue queue1 = new ArrayBlockingQueue<>(1);
BlockingQueue queue2 = new ArrayBlockingQueue<>(1);//这种写法叫 匿名构造方法,运行时机在任何构造方法之前,创建多少个对象就会调用多少次, 而static{} 静态代码块在类加载的时候调用且只调用一次
{try{