线程安全---synchronized-程序竟然正常运行了,那么这个synchronized到底有什么魔力呢

 private static int a = 0;
    public static void main(String[] args) throws InterruptedException {
        Object loker = new Object();
        Thread t1 = new Thread(() -> {
            for(int i = 0; i < 50000; i++) {
                synchronized (loker) {
                    a++;
                }
            }
        });
        
        Thread t2 = new Thread(() -> {
            for(int i = 0; i < 50000; i++){
                synchronized (loker){
                    a++;
                }
            }
        });
        t1.start();
        t2.start();
        t1.join();
        t2.join();
        System.out.println("a = ");
    }

上一篇:leetcode199 二叉树的右视图