[Swift] GCD와 swift concurrency가 나오게된 배경과, concurrency 기본개념
·
앱/Swift
Swift Concurrency 이전의 DispatchQueue (GCD)가 나오게 된 배경이전의 Grand Central Dispatch(GCD)는 정확히 당신이 생각한 대로 thread pool을 시스템 레벨에서 관리하여 thread explosion을 방지하기 위해 만들어졌음GCD 이전의 문제점들Thread 직접 관리의 어려움:개발자가 직접 Thread를 생성하고 관리해야 했음Thread 생성 비용이 높고(스택 메모리 할당, 커널 데이터 구조 등), 각 Thread마다 최소 512KB의 메모리 필요Thread explosion: 동시성 작업이 많아지면 무분별하게 Thread가 생성되어 시스템 리소스 고갈Apple 문서의 표현:"In the past, introducing concurrency to ..