Swift/swift 문법
강한참조 사이클 - weak vs unowned
Lyla.
2023. 4. 11. 17:59
[객체 간의 강한참조 사이클 예방법]
weak 과 unowned의 공통점
: 가르키는 인스턴스의 RC의 숫자를 올라가지 않게 한다.
차이점
weak : 소유자에 비해 보다 짧은 생명주기를 가진 인스턴스를 참조할 때 주로 사용
-> nil 자동 할당 O (가리키는 객체가 사라졌을 시)
unowned: 소유자보다 인스턴스의 생명주기가 더 길거나 같은 경우에 사용
-> nil 자동 할당 X, error 발생
[클로저에서의 강한참조 사이클 예방법]
캡처리스트 안에서 weak or unowned 사용