비동기 반환1 비동기 반환 (Async Result) 연산이 오래 걸리거나, 네트워크를 통해서 결과를 얻거나, 딜레이가 포함되어 있는 내용은 비동기(async) 방식으로 결과는 나중에 생길 때 전달받기로 하고 프로그램의 수행을 멈추지 않는 방식으로 함수를 구현하는 것이 좋습니다. // 동기 func syncFunc(_ nums: [Int]) -> Int { sleep(1) let sum = nums.reduce(0, +) return sum } // 비동기 func asyncFunc(_ nums: [Int], _ result: @escaping (Int) -> Void) { print("sleep......3") DispatchQueue.main.async { sleep(3) let sum = nums.reduce(0, +) result(sum) // 결과.. 2020. 3. 5. 이전 1 다음