설명
1. 이 모니터는 멤버 메서드에서 동기화되며, 이는 메서드에서 동기화(this)를 사용하는 것과 동일합니다. 클래스 모니터: 정적 메서드에서 동기화는 클래스 모니터와 동일합니다. 정적 메서드에서 동기화(XXX.class)
instancepublic class Main {
public synchronized void method1(){
System.out.println(Thread.currentThread().getName()+" method1");
try{
TimeUnit.MINUTES.sleep(5);
}catch (InterruptedException e){
e.printStackTrace();
}
}
public synchronized void method2(){
System.out.println(Thread.currentThread().getName()+" method2");
try{
TimeUnit.MINUTES.sleep(5);
}catch (InterruptedException e){
e.printStackTrace();
}
}
public static void main(String[] args) throws InterruptedException {
Main m = new Main();
new Thread(m::method1).start();
new Thread(m::method2).start();
}
}
사용
위 내용은 Java에는 어떤 특수 모니터가 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!