ASYNCAWAIT

06
P_001 · SWIFT

URLSession 취소를 실패 알림으로 보여주지 않기

Swift concurrency에서 URLSession 요청을 취소했는데 에러 토스트가 뜨는 문제를 CancellationError와 URLError.cancelled 기준으로 정리한다.

JUN 02, 2026 · 6 MIN
#swift#urlsession#concurrency
P_002 · SWIFT

RxSwift 코드베이스에서 async/await로 점진 마이그레이션하는 방법

RxSwift 의존이 큰 iOS 프로젝트에서 신규 코드부터 Swift Concurrency로 옮기는 단계별 전략. Repository async 미러, UseCase 공존, 호출자 화면 단위 전환까지.

MAY 21, 2026 · 7 MIN
#swift#rxswift#asyncawait
P_003 · SWIFT

iOS Coordinator에서 푸시 진입을 단일 라우터로 정리한 기록

UIKit MVVM Coordinator 앱에서 list ViewModel이 푸시를 직접 구독하던 구조를 AppNavigationRouter와 async/await 기반 단일 진입점으로 정리한 사례.

MAY 21, 2026 · 7 MIN
#ios#swift#coordinator
P_004 · SWIFT

@MainActor를 클래스에 통째로 붙이면 생기는 fetch 함정

UIKit 때문에 클래스 전체에 @MainActor를 붙였다가 async fetch까지 메인 액터에 묶인 사례. Swift Concurrency에서 UI 빌드와 데이터 fetch 격리를 나누는 방법.

MAY 21, 2026 · 6 MIN
#swift#concurrency#mainactor
P_005 · SWIFT

Realm에서 SwiftData로: 42개 모델을 옮기는 전략과 함정 (Part 5 — Async/Await 통합)

동기 메서드 안에 숨겨둔 Task { await }는 호출자가 sync 완료를 모르는 fire-and-forget 안티패턴이다. SwiftData 갱신 전 옛 캐시 query가 먼저 도착해 EmptyView 한 프레임이 깜빡인 흐름과 async 시그니처 전파로 정직하게 푼 패턴 정리.

MAY 12, 2026 · 10 MIN
#swiftdata#realm#ios17
P_006 · SWIFT

GCD에서 Swift Concurrency로 — 콜백 지옥을 async/await로 정리하기

GCD의 DispatchQueue·QoS 기본기와, 같은 코드를 async/await로 옮길 때 무엇이 달라지는지. 콜백 지옥, 에러 핸들링 분리, 데드락 함정까지.

JAN 11, 2022 · 5 MIN
#concurrency#gcd#asyncawait