본문 바로가기

개발/Objective-C

[Objective-C] Memory 관리

Objective-C는  Reference Counting이라는 방법을 사용한다. 특정 객체를 사용할려면 Reference Counting값인 retain count를 증가 시키고, 패키 시킬때는 retain count를 감소 시킨다. retain count가 0이 되면 메모리로 부터 패기 된다.

 - alloc : 객체가 처음 생성될때 호출되며, retain count는 1이 된다.
 - copy : 새롭게 복사된 객체를 반환해 주며, retain count를 1로 만들어 준다. 
 - retain : retain counter를 1만큼 늘려준다. 이미 생성된 객체에 대해서 소유권을 가지고 싶을때 retain 메서드를 이용한다.
 - release : 해당 객체의 retain counter를 1만큼 줄여준다. 해당 객체에 대한 소유권을 버리는 메서드
 - autorelease : 미래 어느 시점에 해당 객체의 retain counter를 1만큼 줄여준다. 어느시점에 해당객체에 대한 소유권을 버리겠다는 의미