Java中線程共享資料

2021-08-25 10:06:44 字數 1194 閱讀 4013

///-----------1 採用runnable介面----------------------------

/* 採用runnable介面 實現共享資料的鎖(synchronized) 輸出結果:

老公取10元,剩餘90

老公取10元,剩餘80

老公取10元,剩餘70

老公取10元,剩餘60

老公取10元,剩餘50

老婆取10元,剩餘40

老婆取10元,剩餘30

老婆取10元,剩餘20

老婆取10元,剩餘10

老婆取10元,剩餘0

* /// 不允許同時訪問,如果不使用synchronized 結果如下(注意依然是在採用runnable介面實現的時候):

老公取10元,剩餘90

老婆取10元,剩餘80

老婆取10元,剩餘60

老公取10元,剩餘60

老婆取10元,剩餘50

老公取10元,剩餘40

老婆取10元,剩餘20

老公取10元,剩餘20

老公取10元,剩餘10

老婆取10元,剩餘0

//同時訪問共享資料 產生輸出差錯

*//* public class test implements runnable catch (interruptedexception e) }}

public static void main(string args)

}*//*

* ----------2 使用extends thread 類方法----------------------

* * 結果顯示(多執行幾次 有其他問題 。。。 亂)

老公取10元,剩餘90

老婆取10元,剩餘80

老婆取10元,剩餘70

老公取10元,剩餘60

老公取10元,剩餘50

老婆取10元,剩餘40

老公取10元,剩餘30

老婆取10元,剩餘20

老婆取10元,剩餘10

老公取10元,剩餘0

並沒有起到加鎖 使用runnable還是更容易些

*/public class test extends thread catch (interruptedexception e) }}

public static void main(string args)

}

Java中線程共享資料

1 採用runnable介面 採用runnable介面 實現共享資料的鎖 synchronized 輸出結果 老公取10元,剩餘90 老公取10元,剩餘80 老公取10元,剩餘70 老公取10元,剩餘60 老公取10元,剩餘50 老婆取10元,剩餘40 老婆取10元,剩餘30 老婆取10元,剩餘20...

java中線程問題

24.09 多執行緒 獲取名字和設定名字 掌握 1.獲取名字 通過getname 方法獲取執行緒物件的名字 2.設定名字 通過建構函式可以傳入string型別的名字 new thread start new thread yyy start 通過setname string 方法可以設定執行緒物件的...

JAVA中線程同步方法

在這裡看到的 1 wait方法 該方法屬於object的方法,wait方法的作用是使得當前呼叫wait方法所在部分 塊 的執行緒停止執行,並釋放當前獲得的呼叫wait所在的 塊的鎖,並在其他執行緒呼叫notify或者notifyall方法時恢復到競爭鎖狀態 一旦獲得鎖就恢復執行 呼叫wait方法需要...