Completion Handler
없이도 이를 호출한 곳에 알려줌async
= 비동기 함수func getUser() async thorws -> () {}
let (data, response) = try awiat URLSession.shared.data(for: request)
// URLSession : iOS 이상에서 나온 async 지원 API
await
> potential suspension pont(잠재적 일시 중단 지점)으로 지정 (무조건 suspend가 아님)Suspend
: 해당 스레드가 다른 동작을 수행할 수 있게 제어권 넘김Yielding
스레드 양보 Suspend
> 헤딩 thread 에 대한 control 포기System
: 스레드를 사용하여 다른 작업 수행, suspend 된 비동기 함수를 계속 실행하는 작업이 가장 중요하다고 판단되는 순간 Resume출처
https://sujinnaljin.medium.com/swift-async-await-concurrency-bd7bcf34e26f