본문 바로가기
Swift

[Swift] defer

by Sky Titan 2021. 6. 21.
728x90

defer

  • 현재 scope 내에서 사용되는 값들을 closure로 캡쳐한 뒤 현재 scope가 종료될 때 호출해서 실행하도록 하는 구문
  • 함수 내에서 thread-safe 한 작업을 한 뒤 종료 직전에 lock을 해제하는 등의 작업을 할 수 있다.
import Foundation

func printString() {
    var a = "Hello"
    defer {
        a = "World"
        print(a)
    }
    print(a)
}

printString()
/*결과 : 
Hello
World
*/
728x90

'Swift' 카테고리의 다른 글

[Swift] 클로저 (Closure)  (0) 2021.07.12
[Swift] Any, AnyObject  (0) 2021.06.21
[Swift] 스위프트 네이티브 객체  (0) 2021.06.15
[Swift] 가변매개변수 (Variadic Parameters)  (0) 2021.06.13
[Swift] class 키워드 vs static 키워드  (0) 2021.06.02

댓글