13. 순환참조
페이지 정보
작성자 관리자 댓글 0건 조회 2,797회 작성일 20-10-24 22:47본문
13. 순환참조
- strong : Defalut 로써 아무것도 명시하지 않으면 설정되며 강한참조라고도 합니다.
- weak : 약한참조 이며 옵셔널입니다.
- unowned : weak 와 동일한 약한참조 이지만 옵셔널이 아닙니다.
클래스의 메모리와 관련된 용어들이며 Swift 는 자동으로 메모리 관리를 해줍니다. 따라서, ARC(Automatic Reference Counting) 라는 용어 아래 많은 관련 용어들이 있지만 그 중 기본적으로 strong , weak , unowned 용어가 있습니다.
레퍼런스 카운팅을 계산하여 메모리를 해제하는 여부를 결정하는데 사용되는 것들이며 strong 을 잘못쓰게 되면 영원히 메모리상에서 지울 수 없는 인스턴스가 존재하게 되며 이를 보완하기 위해 weak 와 unowned 을 사용합니다.
weak 는 옵셔널이기 때문에 참조하는 값이 없다면 nil 로 값이 설정되지만
unowned은 항상 값이 있다는 것을 전제로 하기 때문에 참조값이 없는 경우에는 크러시가 발생하게 될 것입니다.
댓글목록
등록된 댓글이 없습니다.