死結 Deadlock
多個執行緒互等對方的資源, 造成誰也不讓誰的狀況
Starvation 飢餓
synchronized區塊需花費常時間, 而某執行緒頻繁取得此資源, 造成其他執行緒一直block
Livelock
每支程式都很忙碌, 但並不是死結
Exam1-synchronized的用法
不同的人作不同的事,用相同的工具
只有一台車. 有駕駛A及駕駛B分別要去台北及屏東1000次.
如下程式碼, 若沒有synchronized(car), 就會造成如下紅色部份, 駕駛B取車後, 又被駕駛A搶去
駕駛A 取車 : 去台北 : 842
駕駛B 取車 : 駕駛A 取車 : 去台北 : 843
駕駛A 取車 : 去台北 : 844
去屏東 : 493
