p345,有關volatile部分不太清楚。
package cc.openhome;html
class Variable1 { static int i = 0, j = 0; static void one() { i++; j++; } static void two() { System.out.printf("i = %d, j = %d%n", i, j); } } public class Variable1Test { public static void main(String[] args) { Thread thread1 = new Thread(() -> { while (true) { Variable1.one(); } }); Thread thread2 = new Thread(() -> { while (true) { Variable1.two(); } }); thread1.start(); thread2.start(); } }
爲什麼結果會有時出現j遠大於i的狀況?java
代碼行數(新增/累積) | 博客量(新增/累積) | 學習時間(新增/累積) | 重要成長 | |
---|---|---|---|---|
目標 | 5000行 | 30篇 | 400小時 | |
第一週 | 200/200 | 1/1 | 20/20 | 編寫簡單程序 |
第二週 | 350/550 | 1/2 | 30/30 | 用IDE調試修改程序 |
第三週 | 500/1050 | 1/3 | 35/85 | |
第四周 | 500/1550 | 1/4 | 30/115 | |
第五週 | 500/2050 | 1/5 | 30/145 | |
第六週 | 700/2750 | 2/7 | 30/175 |