← 질문 목록
#95깊이 0

상태 변경은 어디까지 다시 실행되는가?

모바일심화성능

변경된 State를 읽은 재시작 범위가 다시 실행된다. 그 아래에서도 입력이 바뀌지 않은 스킵 가능 컴포저블은 건너뛸 수 있다.

  1. 상태컴포저블

    읽은 재시작 범위를 무효화한다

  2. Compose컴포저블

    필요한 범위만 다시 실행한다

  3. ComposeUI 트리

    달라진 노드만 반영한다

일반 mutable 객체의 필드만 바꾸면 Compose가 변화를 알지 못한다. MutableState로 바꾸거나 Flow를 collectAsState 계열로 수집해야 갱신이 예약된다.

remember는 같은 Composition에서 값만 보존한다. 부수 효과를 본문에 직접 두면 재실행이나 취소 순서가 깨지므로 LaunchedEffect와 DisposableEffect에 둔다.

Compose는 입력 동일성으로 스킵을 판단한다. 안정성 계약과 key를 잘못 선언하면 오래된 UI 상태가 다른 항목에 붙을 수 있다.

추천 꼬리질문

0/300

적은 내용은 AI 학습에 쓰일 수 있습니다. 이름이나 연락처는 넣지 말아 주세요.

관련 질문

상태 변경은 어디까지 다시 실행되는가?