Weak — 비소유 참조

Weak — 비소유 참조 (Rc)

WeakRc 또는 Arc가 관리하는 할당에 대한 비소유(non-owning) 참조를 갖는 타입이에요. weak.upgrade()로 임시 Rc/Arc를 얻어 접근해요.

출처: Rust 공식 문서

본문

pub struct Weak<T, A = Global>
where
    A: Allocator,
    T: ?Sized,
{ /* private fields */ }

주요 메서드

pub fn upgrade(&self) -> Option<Rc<T>>
pub fn strong_count(&self) -> usize
pub fn weak_count(&self) -> usize

Rc::downgradeWeak를 얻어요. 값이 이미 드롭되었으면 upgradeNone을 반환해요. 순환 참조를 끊는 데 사용해요.

더 알아보기 (Learn more)