[Swift] GCD와 Swift Concurrency 성능 비교
·
Swift/개념 & 응용
GCD와 Swift Concurrency GCD와 Swift Concurrency인 async/await를 비교하는 포스팅은 이미 몇 개 작성했습니다. 이번 포스팅에서는 성능에 초점을 맞춰서 어떤 차이가 있는지 알아보겠습니다. 문법 비교 여기에서도 다루긴 했지만 GCD와 Swift Concurrency의 문법은 어떤 차이가 있는지 한 번 더 짚고 넘어가기로 하죠. 가독성 기존 escaping 클로저와 completion handler를 이용한 비동기 코드는 가독성이 떨어집니다. func processImageData1(completionBlock: (_ result: Image) -> Void) { loadWebResource("dataprofile.txt") { dataResource in loadWe..
[Swift] GCD(Grand Central Dispatch) - 1
·
Swift/개념 & 응용
* GCD 포스팅은 총 2편으로 작성되었습니다. 1편에서는 GCD가 무엇인지, serial/concurrent, sync/async에 대해 알아봅니다. 2편에서는 Dispatch Queue의 종류와 특성에 대해 알아볼 계획입니다. GCD(Grand Central Dispatch)란? Dispatch, also known as Grand Central Dispatch (GCD), contains language features, runtime libraries, and system enhancements that provide systemic, comprehensive improvements to the support for concurrent code execution on multicore hardwa..
[iOS] 카멜레온 개발 일지 - 6 (async/await 적용하기)
·
iOS 프로젝트/카멜레온
completion handler 리팩토링 기존 비동기 처리를 completion handler를 이용했습니다. (자세한 내용은 여기를 확인해주세요.) 최근에 공부한 async / await를 이용해 리팩토링을 진행해보았습니다. 이번 포스팅에서는 아주 일부분만 간단하게 다루려고 해요! 그럼에도 코드가 달라진게 충분히 보이거든요. 기존 코드 오늘 포스팅에서 다룰 코드는 파이어베이스에서 최신 버전과 강제 업데이트 버전을 가져오는 역할로 아래 로직을 수행합니다. 파이어베이스에서 version 값을 읽는다 version 값을 읽은 뒤 version/data를 가져온다. 1번이 끝난 뒤 2번이 진행돼야 하기 때문에 completion handler를 이용해 처리했습니다. FirebaseService.shared...
[Swift] async / await 간단 정리 & 실습
·
Swift/개념 & 응용
서론 async / await에 대한 Swift 가이드를 읽으면서 한숨이 푹 나왔습니다. 이게 무슨 말인지 모르겠고... 단어도 어렵고 ㅎㅎ;; async / await에 대해 따로 정리해야할 필요성을 느껴 포스팅을 하게 되었습니다. 아마 async / await와 task, actor에 대한 것은 꾸준히 공부하면서 글을 작성할 듯 합니다. 아무튼 이번 포스팅은 깊은 개념 정리가 아니라 간단 정리로 생각해주시면 감사하겠습니다. 동시에 간단 실습도 함께 진행합니다! async / await에 대한 Swift 가이드는 여기에서 확인할 수 있습니다. async / await 탄생 배경 async / await는 비동기를 처리하는 기능입니다. 기존에는 completion handler는 에러일 때 complet..
유정주
'async' 태그의 글 목록