Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- Android mvp
- Jetpack Room
- java
- 투포인터 알고리즘
- git local remote
- 2096 파이썬
- 1644 파이썬
- Coroutine Flow
- 1806 투포인터
- 6588 파이썬
- android hilt
- 1753 다익스트라
- 백준 1644
- 코루틴 플로우
- 백준 5582
- 1806 백준
- 5582 파이썬
- 10819 파이썬
- 이진 탐색
- 1753 파이썬
- 1806 파이썬
- Android Room
- 자바
- flow buffering
- 백준 10819
- 5582 DP
- 백준 2096
- 1003 파이썬
- 자료구조
- 안드로이드 hilt
Archives
- Today
- Total
Gemstone's Devlog
ViewModel 인스턴스가 액티비티 인스턴스에 대해 강한 참조를 갖는다면? 본문
장치 회전 시에 액티비티 인스턴스는 소멸되지만, ViewModel 인스턴스는 메모리에 남는다.
그런데 ViewModel 인스턴스가 액티비티 인스턴스에 대해 강한 참조를 가지면 다음 두 가지 문제가 생길 수 있다.
첫째, 액티비티 인스턴스가 메모리에서 제거되지 않아서 이 인스턴스가 사용하는 메모리가 유실된다.
둘째, ViewModel 인스턴스가 현재 사용되지 않는 과거 액티비티의 참조를 갖게 되어 ViewModel 인스턴스가 과거 액티비티의 뷰를 변경하려고 하면 IllegalStateException이 발생한다.
'Kotlin (Android)' 카테고리의 다른 글
ViewModel과 SIS(Saved Instance State) (0) | 2022.01.17 |
---|---|
지연초기화(Lazy Initialization) 자세히.. (0) | 2022.01.17 |
Paging3 라이브러리 공부 (0) | 2022.01.10 |
Retrofit2 Multipart 사용하기 (Java) (0) | 2022.01.07 |
MVVM 패턴 공부 (코드분석) (0) | 2022.01.06 |