>  기사  >  Java  >  Java에는 어떤 특수 모니터가 있습니까?

Java에는 어떤 특수 모니터가 있습니까?

WBOY
WBOY앞으로
2023-05-17 08:58:441405검색

설명

1. 이 모니터는 멤버 메서드에서 동기화되며, 이는 메서드에서 동기화(this)를 사용하는 것과 동일합니다. 클래스 모니터: 정적 메서드에서 동기화는 클래스 모니터와 동일합니다. 정적 메서드에서 동기화(XXX.class)

instance

public 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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 yisu.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제