Java中的Monitor和Synchronized关键字
因此,我在理解Java监视器和synchronized关键字之间的区别时遇到了问题 在Java中,每个类基本上都是一个监视器。宣布它为Java中的Monitor和Synchronized关键字,java,concurrency,Java,Concurrency,因此,我在理解Java监视器和synchronized关键字之间的区别时遇到了问题 在Java中,每个类基本上都是一个监视器。宣布它为 monitor BankAccount{ double balance; public void withdraw(){} public void deposit(){} } 这个类的每个方法都是同步的还是我需要指定关键字?monitor不是关键字。默认情况下不同步任何内容。您需要方法上的synchronized关键字才能使其同
monitor BankAccount{
double balance;
public void withdraw(){}
public void deposit(){}
}
这个类的每个方法都是同步的还是我需要指定关键字?
monitor
不是关键字。默认情况下不同步任何内容。您需要方法上的synchronized
关键字才能使其同步(或显式使用其他锁定机制,但不会自动发生)。monitor
不是关键字。默认情况下不同步任何内容。您需要方法上的synchronized
关键字才能使其同步(或显式使用其他锁定机制,但不会自动发生)。监视器可能与Java中的每个对象实例相关联。这包括类
对象。但是,没有关键字监视器
。当对声明为synchronized
的对象调用方法或使用显式synchronized
块时,监视器同步。静态方法在与表示类类型的类
对象关联的监视器上同步。监视器可能与Java中的每个对象实例关联。这包括类
对象。但是,没有关键字监视器
。当对声明为synchronized
的对象调用方法或使用显式synchronized
块时,监视器同步。静态方法在与表示类类型的Class
对象关联的监视器上同步。这可能有助于说明这不是有效的类声明,因为monitor在Java中不是关键字。对象有监视器,但类不是监视器。如果要同步方法,必须在每个方法上使用关键字。注意:要锁定两个帐户,您必须注意锁定顺序以避免死锁。这可能有助于避免此类声明无效,因为monitor在Java中不是关键字。对象有监视器,但类不是监视器。如果要同步方法,必须在每个方法上使用关键字。注意:要锁定两个帐户,您必须注意锁定顺序,以避免死锁。