testthread4.java

来自「文件输入流」· Java 代码 · 共 44 行

JAVA
44
字号
class MyThread implements Runnable{

	volatile private static int share;
	public MyThread(int _share){
		share=_share;
	}
	
	/**
			synchronized静态方法的形式,解决多线程同步的问题
			synchronized 静态方法:监视器就是相应的类
	*/
	synchronized public static void setI(){
		while(true){
			if (share > 0) {
				try{
						Thread.sleep(200);	
				}
				catch(Exception e){
						System.out.println("捕获到异常");	
				}
				share--;	
				System.out.println(Thread.currentThread().getName()+"  share = " + share);
			} else {
				System.out.println(Thread.currentThread().getName()+"  share <= 0");
				break;
			}
		}
	}
	 public void run() {
	 		MyThread.setI();//直接调用
	}

}
public class TestThread4 {
	public static void main(String[] args) {
		MyThread mt=new MyThread(20);
		MyThread mt2=mt;
		Thread t1=new Thread(mt);
		Thread t2=new Thread(mt2);
		t1.start();
		t2.start();
	}

}

⌨️ 快捷键说明

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