본문 바로가기

swift concurrency

(4)
[Swift 5.5] Structured concurruency in swift | Concurrency 작년에 처음으로 WWDC 라는 것을 알게 됬고 여러 주제 중 modern concurrency(async/await,actor etc..) 소개 영상을 봤습니다. 영상에처 자꾸 Structured concurrency라는 말을 하는데 이 부분만 해석을 못하고 관련 개념이 안떠서 당황했었는데 이제서야 알게 됬습니다. 요기에 자세하게 있는데 이 글을 읽으며 알게 된 내용을 정리하고자 글을 작성하게 되었습니다. Structured Concurrency Concurrency system은 기본적인 툴을 제공합니다. 대부분은 지금 실행중인 threads는 새로 만들어진 thread와 concurrent 실행을 해야 합니다. shared system resource는 한정되어 있기에 Thread explosion을..
[Swift 5.5] actor, actor isolation, cross-actor reference 개념 완벽 뿌수기 | No2. Actor 안녕하세요. 저번 포스트에선 actor의 개념과 thread-safe, actor's serial executor에 대해 공부했던 개념을 정리했습니다. 이번 포스트는 actor와 isolated state, Sendable(관련 개념 정리)을 준수하며 actor를 사용하는 방법, actor isolated state, cross-actor reference, mainActor, nonisolated를 공부했던 내용을 정리하려 합니다. 지난번 actor에 대한 개념만 다시 간략하게 정리하겠습니다. 1. Actor concept Concurrent domain간 shared mutable state를 access할 때 동시성 문제가 발생할 수 있습니다. multi thread에서 mutable 값이 담긴 메..
[Swift] DispatchGroup으로 tasks 관리하기 | No6. GCD 안녕하세요. 이번 포스트는 DispatchGroup, CurrentPerform, DispatchPredition에 관한 개념을 정리하려고 합니다. GCD 관련 포스트 개념을 정리했습니다. Concurrency를 할 때 특정 task가 전부 끝날 경우 notification을 받고 싶은 경우가 있습니다. 예를들어 사용자가 로그인을 했을 때 해당 사용자의 정보, 프로필, 친구 관계, 영화, 승차권 등 예매했다면 예매 정보 등등 서버에 저장되어 있는 사용자에 관련된 정보를 전부 가져옵니다. 이때 사용자에 관한 정보들은 concurrency tool을 통해 async하게 받아옵니다. 각각의 task가 끝날 때마다 부분 부분 관련 데이터를 저장하는 곳에 업데이트 하는게 아니라 사용자에 관한 정보를 fetch하는..
[Swift] GCD와 Concurrency. main thread와 dispatch queue global 개념 뿌수기!! | No4. GCD 안녕하세요. Swift의 concurrency. CGD의 개념을 공부했는데 GCD와 dispatchQueue global에 관해 정리하려고 합니다. GCD를 소개하기 전에 concurrency의 기본 개념 Thread, async,sync, dispatchQueue등의 개념을 정리했습니다. 먼저 참고해주시면 감사합니다. GCD 관련 포스트 정리. 이전 포스트의 Thread파트에서 잠깐 소개했지만 Main Thread는 UIResponder 타입인 UIApplication과 Run loop를 통해 user interface를 담당합니다. Main Thread는 단 하나 존재합니다. UI 업데이트, 사용자의 터치, 제스처, event 반응 등 기본적으로 탐지하고 그에 맞는 델리게이트를 main thread에..