본문 바로가기

ARC4

[iOS] 메모리 관리 기법 - ARC (Automatic Reference Counting) Xcode 4와 동시에 등장한 ARC(Automatic Reference Counting) 덕분에, iOS 개발자들은 레퍼런스 카운트 관리에서 해방될 수 있었습니다. 그렇다면 ARC는 어떻게 동작하기에 개발자들의 수고를 덜어주고 있을까요? 이번 글에서는 ARC가 어떤 역할을 하며, 어떻게 동작하는지 알아보려 합니다. 이전에 작성했던 레퍼런스 카운팅과 MRR에 대한 글을 읽고 나면, 이 글을 이해하는데 도움이 됩니다. [iOS] 메모리 관리 기법 - 레퍼런스 카운팅 (Reference Counting) 'iOS와 OS X의 메모리 관리와 멀티스레딩 기법'이라는 책을 접하게 되어 내용을 정리하고자 합니다. 이번 글의 주제는 메모리 관리 기법의 기본인 '레퍼런스 카운팅'과 '메모리 누수' 입니다. 레퍼런스 카.. 2019. 11. 5.
[iOS] 메모리 관리 기법 - MRR (Manual Retain Release) Xcode 4와 동시에 등장한 ARC(Automatic Reference Counting) 덕분에, iOS 개발자들은 레퍼런스 카운트 관리에서 해방될 수 있었습니다. 그럼 ARC가 도입되기 전에는 어떤 방식으로 레퍼런스 카운트를 관리했을까요? 이번 글과 다음 글에서는 '레퍼런스 카운팅'을 활용한 메모리 관리 방법에 대해 알아보려고 합니다. 레퍼런스 카운팅에 대한 내용이 궁금하다면 이전 글을 참고해주세요. [iOS] 메모리 관리 기법 - 레퍼런스 카운팅 (Reference Counting) 'iOS와 OS X의 메모리 관리와 멀티스레딩 기법'이라는 책을 접하게 되어 내용을 정리하고자 합니다. 이번 포스팅의 주제는 메모리 관리 기법의 기본인 '레퍼런스 카운팅'과 '메모리 누수' 입니다. 레퍼런스 카운팅.. .. 2019. 10. 31.
[iOS] 메모리 관리 기법 - 레퍼런스 카운팅 (Reference Counting) 'iOS와 OS X의 메모리 관리와 멀티스레딩 기법'이라는 책을 접하게 되어 내용을 정리하고자 합니다. 이번 글의 주제는 메모리 관리 기법의 기본인 '레퍼런스 카운팅'과 '메모리 누수' 입니다. 레퍼런스 카운팅 레퍼런스 카운팅(Reference Counting)은 iOS(Mac OS)에서 사용하는 메모리 관리 방법입니다. 이 방법 객체를 참조하는 수(Reference Count)의 증가 또는 감소를 통해 메모리를 관리하게 됩니다. 객체를 생성하거나 참조 하게되면 레퍼런스 카운트는 '+1' 증가하게 되고, 해당 객체의 사용이 끝나거나 객체를 반환(release)할 경우 레퍼런스 카운트가 '-1' 감소됩니다. 최종적으로 해당 객체의 레퍼런스 카운트가 '0'이 될 경우 해당 객체는 메모리에서 소멸됩니다. 객체.. 2019. 10. 31.
[iOS] iOS 메모리 관리 기법 - 2. Objective-C의 메모리 관리 1. 시작하며이전 포스팅에서 메모리 관리 기법인 '레퍼런스 카운팅'에 대해 간단하게 알아 보았습니다. 이번 포스팅에서는 OS X와 iOS에서는 레퍼런스 카운팅을 이용하여 어떻게 메모리를 관리하는지 알아보겠습니다. 2. 레퍼런스 카운팅의 4가지 규칙- 생성하는 객체는 소유권을 가진다.- "retain"을 이용하여 객체의 소유권을 가질 수 있다.- 필요하지 않은 객체는 소유권을 내주어야 한다.- 소유하고 있지 않은 객체의 소유권을 내주어서는 안된다.* 소유권 : reference count (Retain Count) 레퍼런스 카운팅 기법에서는 객체의 참조 대상을 알 필요가 없습니다. 대신 위 4가지의 규칙을 따르는 것이 전부입니다.Objective-C 객체의 행동 Objective-C 메서드 생성, 소유권 .. 2014. 4. 15.