synchronized关键字修饰普通方法时,获得的锁是对象锁,也就是this对应的实例,如果多个线程通过不同的对象来调用方法,那么他们的锁就是不一样的,不会造成阻塞。
而修饰静态方法时,锁是类锁,也就是类名.class,多个线程调用该类的同步的静态方法时,都会阻塞。
synchronized关键字修饰普通方法时,获得的锁是对象锁,也就是this对应的实例,如果多个线程通过不同的对象来调用方法,那么他们的锁就是不一样的,不会造成阻塞。
而修饰静态方法时,锁是类锁,也就是类名.class,多个线程调用该类的同步的静态方法时,都会阻塞。