1. 程式人生 > >多執行緒同步程式碼塊的兩種方法

多執行緒同步程式碼塊的兩種方法

程式碼塊同步
public void print2(){
		
		synchronized (this) {
			System.out.print("w");
			System.out.print("o");
			System.out.print("r");
			System.out.print("l");
			System.out.print("d");
			System.out.println();
		}
		
	}
方法同步
	public   synchronized  void print1(){
		//方法同步程式碼塊
		
		//1 synchronized(所物件){需要完整執行程式碼;}
		//所物件 : 任何物件都可以,注意,多個執行緒只有公用同一個鎖物件才可以保證同步
		// 2 . 使用同步方法實現相同效果
		//000普通的同步方法,鎖物件是this
		// 靜態方法物件不是this  是位元組碼物件   類名.class
		
		//同步方法  同步程式碼塊 
		
		//synchronized(obj) {
			System.out.print("h");
			System.out.print("e");
			System.out.print("l");
			System.out.print("l");
			System.out.print("o");
			System.out.println();	
		//}
		
	}