有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

Java中的并发监视器和同步关键字

所以我在理解Java监视器和synchronized关键字之间的区别时遇到了问题

在Java中,每个类基本上都是一个监视器。宣布它为

monitor BankAccount{
   double balance;    

   public void withdraw(){}

   public void deposit(){}

}

这个类的每个方法都是同步的还是我需要指定关键字


共 (2) 个答案

  1. # 1 楼答案

    monitor不是关键字。默认情况下不同步任何内容。您需要方法上的synchronized关键字来同步它(或者显式地使用其他一些锁定机制,但它不会自动发生)

  2. # 2 楼答案

    监视器可以与Java中的每个对象实例相关联。这包括Class对象。但是,没有关键字monitor。当对声明为synchronized的对象调用方法或使用显式synchronized块时,监视器将同步。静态方法在与代表类类型的Class对象关联的监视器上同步