테스트
동시성 코드 테스트
actor와 Task를 사용하는 동시성 코드에서 데이터 레이스를 테스트로 재현하거나 검출하려면 어떻게 하나요?
면접관은 이 답을 어떻게 들을까요? 넘어갈지, 더 물어볼지, 떨어뜨릴지 알려 주고, 걸리는 문장은 콕 집어 줘요. 점수는 그대로예요.
actor와 Task를 사용하는 동시성 코드에서 데이터 레이스를 테스트로 재현하거나 검출하려면 어떻게 하나요?
Swift 6 strict concurrency로 Sendable 위반을 컴파일 시 대부분 막고, 남은 것은 Thread Sanitizer를 켠 채 TaskGroup으로 수백 번 동시 호출하는 스트레스 테스트로 레이스를 스택과 함께 잡는다. actor 상태는 await로 읽어 검증한다.
동시성주관식기초
여러 스레드에서 호출되는 아래 코드는 count가 기대보다 작게 나옵니다. 왜 그런지 CPU 수준에서 설명해 주세요. …
#actor #data-race
동시성객관식심화
Swift 6 strict concurrency에서 추가 조치 없이 Sendable로 취급되는(또는 자동 채택되는) 것을 모두 고르세요.
#actor #sendable
동시성주관식심화
Thread Sanitizer는 어떤 원리로 데이터 레이스를 잡나요?
#data-race #thread-sanitizer
동시성주관식기초
Swift에서 class와 actor의 차이는 무엇인가요?
#actor #swift-concurrency