inflearn logo
강의

講義

知識共有

Java基礎からマスターする with ウンジョン先生 (Do it Javaプログラミング入門) - Part 2(マスター編)

wait()/notify()メソッドを活用した同期プログラミング

synchronized 과정

解決済みの質問

201

yongtech54

投稿した質問数 15

0

    public synchronized String lendBook() throws InterruptedException{
        while (bookList.size() == 0) {
            wait();
        }

        String book = bookList.remove(0);
        System.out.println(Thread.currentThread() + " 학생이 책을 빌렸습니다.");
        return book;
    }

 

위 코드의 경우 synchronized method로 처리하였습니다.

이 경우 shared resource(예제의 경우 this 객체)에 접근하는 3개의 thread에 대해서도 하나의 쓰레드가 차지한 경우 lock을 걸고 사용이 끝나면 다음 쓰레드가 사용하는 과정을 거치나요? (이러한 과정이 굉장히 빨라서 동시에 일어나는 것 처럼 보일 뿐)

 

 

java 객체지향 알고리즘

回答 1

0

eunjong

예.. 그렇습니다. method에 synchronized 키워드를 넣으면 그 메서드가 포함된 객체에 lock이 걸립니다. 쓰레드의 개수를 늘리면 waiting 하는 것을 확인하실 수 있습니다.

싱글턴패턴

0

2

1

이진 탐색 문제 질문드립니다

0

248

1

ChatRoom에서 synchronized 사용 이유

0

477

1

미로찿기 질문드립니다

0

304

2

socket 질문드립니다

0

280

1

지역 내부 클래스 질문드립니다.

0

204

1

큐 구현하기 질문드립니다

0

322

2

수업자료

0

175

1

섹션 1 - 1 equals 재정의 하면 왜 hashcode도 재정의 해야하는지..

0

237

1

컬렉션 프레임워크에서 get()

0

264

2

awt 패키지 접근 불가 에러

0

518

1

iterator 관련 질문입니다.

0

239

1

수업 중간에 메소드 정의 보시는거 어떻게 하는지 알 수 있을까요?

1

287

2

예외처리 질문드려요

0

393

1

멀티 쓰레드 동기화 관련 질문입니다!

1

407

1

Generic 강의중 궁금한점

0

377

1

여러 가지 보조 스트림 클래스들

0

314

1

교재내용

0

334

1

힙메모리

0

443

1

미로찾기 문제에 VISIT의 쓰임

1

485

2

입출력 스트림 질문입니다.

0

271

1

알고리즘 강의는 무슨언어로 진행하시나요? 혹시 자바로 하시나요?

0

401

2

강의 화면의 깃랩은 어떻게 들어가나요?

0

686

2

강의가 잘못 업로드 되어 있습니다.

1

425

2