control.java

来自「JAVA实现经典停等协议的多线程方法,这个简单的但是经典的方法是多线程编程的入门」· Java 代码 · 共 35 行

JAVA
35
字号
package waitANDnotify;

public class Control {
	int n;
	boolean valueSet;
	
	synchronized int get(){
		if(valueSet){
			try{
				wait();
			}catch (InterruptedException e){
				System.out.println("InterRuption occur.");
			}
		}
			System.out.println("Got: "+n);
			valueSet=false;
			notify();
			return n;
		}
	    
	synchronized void put(int n){
		if(valueSet){
			try{
				wait();
			}catch(InterruptedException e){
				System.out.println("InterRuption occur.");
			}
		}
		    this.n=n;
		    System.out.println("Put: "+n);
		    valueSet=false;
		    notify();
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?