CHAAANY ARCHIVE

strongReference

1개의 기록을 주제별로 둘러보세요.

Swift ARC의 strong·weak·unowned: 수명 관계로 참조 고르기

Swift의 class instance는 Automatic Reference Counting, 즉 ARC가 수명을 관리한다. ARC는 strong reference 수를 추적하다가 더는 강하게 참조되지 않는 instance를 해제한다.여기까지만 보면 직접 memory를 해제할 일이 없어 보인다. 하지만 두 instance가 서로를 strong으로 잡거나, instance가 자신을 잡는 closure를 보관하면 reference count가 0이 되지 않는 cycle이 생길 수 있다.weak와 unowned는 이 cycle을 끊는 도구다. 둘 중 무엇을 고를지는 문법 취향이 아니라 참조 대상이 먼저 사라질 수 있는가로 결정해야 한다.strong은 기본 소유 관계다별도 keyword 없이 class inst..

728x90