為什么我按照視頻里的代碼設置了鎖機制,還是能量不守恒
synchronized?(lockObject)?{
????while?(energy?>?energyBoxes[from])?{
????????try?{
????????????lockObject.wait();
????????}?catch?(InterruptedException?e)?{
????????????e.printStackTrace();
????????}
????}
????System.out.println(Thread.currentThread().getName());
????energyBoxes[from]?-=?energy;
????System.out.printf("從%d轉移了%10.2f單位能量到%d%n",?from,?energy,?to);
????energyBoxes[to]?+=?energy;
????System.out.printf("能量總和為%10.2f%n",?getTotalEnergies());
????lockObject.notifyAll();
}