develop

Autorelease Pool을 사용해야 하는 상황 본문

iOS

Autorelease Pool을 사용해야 하는 상황

pikachu987 2021. 7. 14. 14:40
반응형

반복적으로 메모리를 많이 차지하는 로직을 사용할때 메모리가 해제되지 않고 앱이 죽어버리는 경우가 있다.
메모리를 해제할 시간을 주지않고 계속 메모리를 사용을 해서 생기는 문제이다.

 

이런 경우에 autoreleasepool을 사용하게 되면 특정 로직을 실행하기 전에 임시오토릴리즈풀이 만들어지고 블럭을 빠져나간 뒤에

임시오토릴리즈풀은 비워지게 되면서 메모리 사용량이 다시 줄어들게 된다.

 

오토릴리즈풀 블럭 안에서는 return이 되지 않는다. break 는 컴파일에러가 난다.

autoreleasepool 함수 안에서 리턴값으로 Result를 받는다.
autoreleasepool 함수는 Result를 리턴해준다.

반응형

'iOS' 카테고리의 다른 글

ARC, 순환참조, 캡쳐  (0) 2021.07.13
hugging, compression resistance에 대해서  (0) 2021.07.12
frame과 bounds의 차이  (0) 2021.07.11
Hashable에 대해  (0) 2021.06.23
==과 ===의 차이, closure의 ===  (0) 2021.06.22
Comments