동시성
iOS 동시성 수단 선택
새 iOS 기능에서 네트워크 결과를 여러 화면이 공유하고 UI도 갱신해야 합니다. Swift Concurrency의 async/await, Task, actor를 각각 어떤 역할에 쓰겠습니까?
면접관은 이 답을 어떻게 들을까요? 넘어갈지, 더 물어볼지, 떨어뜨릴지 알려 주고, 걸리는 문장은 콕 집어 줘요. 점수는 그대로예요.
새 iOS 기능에서 네트워크 결과를 여러 화면이 공유하고 UI도 갱신해야 합니다. Swift Concurrency의 async/await, Task, actor를 각각 어떤 역할에 쓰겠습니까?
async 함수는 네트워크처럼 기다리는 일을 순서대로 쓰는 문법이고, Task는 동기 코드(버튼 탭, viewDidLoad)에서 그 async 세계로 들어가는 출발점이며, actor는 여러 Task가 같이 만지는 응답 캐시 같은 가변 상태를 감싸 접근을 직렬화하는 곳이다. UI 갱신은 @MainActor로 격리된 ViewModel에서 한다.
동시성주관식기초
Swift에서 class와 actor의 차이는 무엇인가요?
#swift-concurrency #actor #mainactor
SwiftUI주관식기초
SwiftUI 주문 목록 ViewModel이 async API를 호출한 뒤 결과로 화면 상태를 바꿉니다. Swift 6 strict concurrency에서 이…
#async-await #mainactor
테스트주관식딥다이브
actor와 Task를 사용하는 동시성 코드에서 데이터 레이스를 테스트로 재현하거나 검출하려면 어떻게 하나요?
#swift-concurrency #actor
동시성주관식기초
여러 스레드에서 호출되는 아래 코드는 count가 기대보다 작게 나옵니다. 왜 그런지 CPU 수준에서 설명해 주세요. …
#actor