ARC (Automatic Reference Counting) 의 약자로 이번에 iOS5 가 나오면서 생긴것 같다.
쉽게 말해 자바에 있는 가비지 컬렉터 비슷 한 역할 인것 같다.
보통 iOS 에서 메모리를 생성 하거나 해제 할때 alloc, init, retain, release 를 사용했는데,
ARC 를 사용하면 그 부분이 필요가 없어 진다.
WWDC의 글을 요약하면
1. retain, release, retaincount, autorelease 를 사용 할 수 없음.
2. dealloc 을 더 이상 사용할 필요가 없음.
3. 개발자가 만든 dealloc 함수에서 [super dealloc] 호출 불가.
4. NSAllockateObject, NSDeallocateObject 를 사용할 수 없음.
5. alloc에 의해 만들어진 객체는 실행 할 때 runtime이 deallocation object 를 관리.
6. C 구조체 사용 불가 (NSObject 를 사용 하라.)
7. NSAutoreleasePool 사용 불가.
결과적으로, 메모리를 해제 해주는 코드를 쓰지 않아도 된다는 얘기 인것 같음.
ARC 를 사용하지 않는 방법은.
프로젝트 -> 타겟 -> build phases -> Compile Sources
에서 파일을 선택하고 Compiler Flags 의 갑을 false 로 주거나 “-fno-objc-arc”로 주면 된다.
'Programming > iOS' 카테고리의 다른 글
[iOS] The Service is Invalid 에러 (0) | 2015.03.27 |
---|---|
[iOS] respondsToSelector, performSelector 차이 (0) | 2015.03.27 |
[iOS] Couldn’t register xxxx with the bootstrap server 에러 (0) | 2015.03.27 |
[iOS] iOS에서 코드로 스크린샷 찍는 방법 (0) | 2015.03.27 |
[iOS] XCode 시뮬레이터 홈버튼 단축키 (0) | 2015.03.25 |