Rc Weak

Rc는 값을 살리고 Weak는 순환을 끊는 약한 관찰자다

strong_count가 0이 되면 값은 해제되고, weak_count는 값의 생존을 막지 않는다.

01 Rc::newstrong = 1

값 소유 시작

02 Rc::clonestrong + 1

공유 소유 증가

03 Rc::downgradeweak + 1

생존 보장 없음

04 drop strongstrong = 0이면 값 해제

Weak::upgrade는 None 가능

구분의미판단
Rc<T>공유 소유권값을 살림
Weak<T>약한 참조순환 참조 방지
upgradeOption<Rc<T>>값이 남아 있을 때만 Some

핵심 Weak는 “안전한 참조”가 아니라 “소유하지 않는 연결”이다.