[iOS] 동시성 프로그래밍(6) - Concurrency Problems
2023. 1. 10. 22:29
iOS/iOS
concurrency problem(동시성 문제)란멀티 쓰레딩 환경에서 공유자원에 동시에 접근하여 발생하는 문제를 말한다. 동시성 문제에는 크게 3가지가 있다. Race Condition (경쟁 상태)DeadLock (교착 상태)Priority Inversion (우선순위 뒤바뀜) Race Condition Race Condition(경쟁상태)이란,공유자원에 여러 쓰레드가 동시에 접근하게 되어, 작업의 접근 순서에 따라 결과가 바뀌는 문제를 의미한다. 더 정확히 얘기하자면, 공유자원에 대한 쓰기 작업에 의해 발생한다. (읽기 작업은 상관없음)for i in 1...5 { print("--- \(i)번째 ---") let group = DispatchGroup() var s..