Rc는 값을 살리고 Weak는 순환을 끊는 약한 관찰자다
strong_count가 0이 되면 값은 해제되고, weak_count는 값의 생존을 막지 않는다.
값 소유 시작
공유 소유 증가
생존 보장 없음
Weak::upgrade는 None 가능
| 구분 | 의미 | 판단 |
|---|---|---|
| Rc<T> | 공유 소유권 | 값을 살림 |
| Weak<T> | 약한 참조 | 순환 참조 방지 |
| upgrade | Option<Rc<T>> | 값이 남아 있을 때만 Some |
핵심 Weak는 “안전한 참조”가 아니라 “소유하지 않는 연결”이다.