e10_5.java

来自「各种多线程的算法源程序」· Java 代码 · 共 48 行

JAVA
48
字号
public class E10_5{
	int i=0;
	int [] data=new int [100];
	public synchronized  void push(int j){
		data[i]=j;
		System.out.println("push NO: "+i+" value="+j);
		i++;
	}

    public synchronized int pop(){
    	i--;
    	System.out.println("pop NO:"+i+" value="+data[i]+""+'\t');
    	return data[i];
    }
    public static void main(String args[]){
    	E10_5 e=new E10_5();
    	T1 t1=new T1(e);    
    	T2 t2=new T2(e);
    	
    	t1.start();
    	t2.start();
   
    }
    
    
}
class T1 extends Thread{
	E10_5 e;
	T1(E10_5 e){
		this.e=e;
	}
	public void run(){
		for(int i=0;i<50;i++){
			e.push(i);
		}
	}
}
class T2 extends Thread{
	E10_5 e;
	T2(E10_5 e){
		this.e=e;
	}
	public void run(){
		
			e.pop();
		
	}
}

⌨️ 快捷键说明

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