静态方法同步了什么?

时间:2011-03-07 23:39:38

标签: java concurrency

  

可能重复:
  How do synchronized static methods work in Java?

我想知道如果在静态方法上使用synchronized会发生什么。该类是否锁定该方法?这与非静态方法的同步有何不同?

由于

2 个答案:

答案 0 :(得分:4)

This question对上述问题有很多高质量的答案。

答案 1 :(得分:-1)

是的,类“获取”锁而不是实例(正如Bruno所指出的,这个术语是不精确的.Thread使用类对象或实例作为锁定对象来获取锁)。意思是,如果这些方法在各个实例上同步,则可以有3个线程同时执行3个同步方法。如果该方法在类上同步,则只有一个线程可以执行它。