在Java中的方法上使用Synchornization

时间:2018-11-21 03:22:10

标签: java synchronization

我正在使用Java进行同步。我写了下面的代码,使用了synced关键字。它应该先运行t1,然后运行t2。但是t1和t2都同时运行。我不明白原因,为什么即使使用synced关键字,两者都可以同时运行。

public class DemoClass extends Thread {
public static void main(String[] args){
    DemoClass dm1 = new DemoClass();
    DemoClass dm2 = new DemoClass();
    Thread t1 = new Thread(dm1);
    Thread t2 = new Thread(dm2);
    t1.start();
    t2.start();
}

public void run(){
    printTabel();
}

synchronized void printTabel(){
    for(int i=0;i<5;i++){
        System.out.println("i value is " + i);
        try{
            Thread.sleep(1000);
        }catch (InterruptedException e){

        }
    }
}

}

0 个答案:

没有答案