Non Escaping Closure
- 함수 바디에 있는 클로져는 항상 함수 실행이 종료되기 전에 완료됨
- 함수의 실행흐름을 탈출하지 않음
- 파라미터는 함수가 실행되면 생성되었다가 햠수의 실행이 끝나면 자동으로 제거됨
Escaping Closure
- 시작 시점과 종료 시점이 특정되어 있지 않음
- 함수의 관계와 상관없이 클로저를 실행할 수 있음
- 클로져가 a 상수 캡처함 escaping 클로져를 사용하면 함수의 실행흐름을 벗어날 수 있음
- 클로져가 캡처한 값이 클로져 실행이 완료될때까지 삭제되지않음
- 그래서 클로져 실행흐름이 함수흐름을 벗어나더라도 메모리 오류없이 정상적으로 실행됨
'Swift랑 친해지기 > Swift문법정리' 카테고리의 다른 글
[Swift] Closure (클로져) (0) | 2022.08.16 |
---|---|
[Swift] Tuples (튜플) (0) | 2022.08.16 |
[Swift] Capturing values (0) | 2022.08.15 |
[Swift] Syntax-optimization (문법 최적화) (0) | 2022.08.15 |
[Swift] Discardable Result (함수) (0) | 2022.08.08 |