inflearn logo
강의

Course

Instructor

Frozen Coder's Easy Introduction to Modern Android Development

Singleton Pattern Basics

Java Bill Pugh Solution 에서 INSTANCE

457

Versa

4 asked

0

Singleton Pattern 기초 강의 내용에서 질문드립니다.

Bill Pugh Solution (Java)

부분에서 Holder 클래스를 보시면

private static final DBHandler INSTANCE = new DBHandler();

라고 되어있는데, 이 경우 getInstance() 함수를 통해 Holder.INSTANCE 가 호출이 되어도 fianl 로 선언되어있어 한번만 선언되기 때문에 signleton 으로 사용 가능하다는 말씀이 맞는지 궁금합니다.

android kotlin 아키텍처 jetpack

Answer 1

0

frozencoder

빌푸 솔루션이 스레드 세이프가 되는 이유는, 두 개의 스레드가 거의 동시에 getInstance()를 실행시키는 상황에서 1번 스레드가 먼저 getInstance()를 실행시켰을 경우 JVM이 2번 스레드의 요청을 받아도 1번 스레드에 의해 static inner class가 생성될 때까지 대기시키므로 싱글톤이 유지되기 때문입니다. 다음 토론도 참고하시면 좋을 것 같습니다.

https://stackoverflow.com/questions/6109896/singleton-pattern-bill-pughs-solution

Coroutine, Flow 질문

0

379

1

Transformations import 안됨

0

570

1

moshi관련 질문입니다.

0

539

2

searchBooks() 에서 북 검색 입력을 너무 빨리 할 경우 마지막 글자로 검색이 안돼요.

0

352

1

안드로이드에서 아키텍처 패턴

0

403

1

RecyclerView.Adapter vs ListAdpater

0

459

1

Flows 와 Coroutine

1

554

1

[BookSearchAdapter] onBindViewHolder의 currentList[position] 질문

0

357

1

코루틴 메모리 관련해서 질문드립니다!

0

441

1

nested json에서 특정 부분만 파싱하는법

0

484

1

Fragment에서의 viewBinding

0

511

3

toolbar 질문드립니다.

0

402

2

EditText 에서 delay 주셔서 처리하셨는데 flow 의 debounce() 하고 같은건가요?

2

559

1

코루틴 관련 질문

0

538

1

오류

1

488

2

강사님! 직렬화 라이브러리를 Moshi, kotlin serialization 두개를 사용하시던데 이유가 있으신가요?

1

737

1

EditText 는 kill 해도 값이 잘 저장되어있던데 혹시 제가 잘못테스트했을까요?

1

342

1

서버도 페이징 기능이 되는데 Paging 라이브러리가 필요할까요?

1

519

1

GSON 이 아닌 Moshi 를 사용하시는 이유가 있을까요?

1

1262

1

EditText 는 액티비티가 재생성되어도 값이 남아있던데 이유가 궁금해요

1

491

1

ViewModel 생성시 왜 초기값을 받지 않도록 했을까요?

1

431

1

Room DB에 id 항목 추가

0

246

1

안녕하세요. 용어에 대해 질문이 있어 글 남깁니다.

0

395

2

paging config pageSize 관련

0

421

1