synch2.java

来自「java经典10例子」· Java 代码 · 共 40 行

JAVA
40
字号
class One {       
  void display(int num)  { 
       System.out.print(""+num);
       try {
          Thread.sleep(1000); 
       }catch(InterruptedException e){
           System.out.println("中断");
       }
       System.out.println(" 完成");
 }
}
class Two implements Runnable {  
   int number;
   One one;
   Thread t;
   public Two(One one_num,int n) {
 	   one=one_num;     number=n;
        t=new Thread(this);    t.start();
   }
	public void run() {
	  synchronized(one) {     
             one.display(number);
      }
   }
 }
public class Synch2{
	public static void main(String args[]) {
		One one=new One();
		int digit=10;
		Two s1=new Two(one,digit++);
		Two s2=new Two(one,digit++);
		Two s3=new Two(one,digit++);
		try{
       		s1.t.join();
       		s2.t.join();
       		s3.t.join(); 
       	}catch(java.lang.InterruptedException e){}
    }
} 

⌨️ 快捷键说明

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