본문 바로가기
앱/iOS(Swift)

[스위프트] GCD API 동작 방식과 필요성

by 리드맥 2022. 1. 12.

GCD: 백그라운드에서 스레드를 관리하면서 동시적으로 작업을 실행시키는 저수준 API를 제공하는 라이브러리이다(C)

앱을 실행하면 시스템이 자동으로 메인스레드 위에서 동작하는 Main 큐(Serial Queue)를 만들어서 작업을 수행행, 그 외에 여러 개의 Global 큐(Cuncurrent Queue)를 추가적으로 만들어서 큐를 관리한다

  • Dispatch Queues: FIFO 순서로 작업을 실행시키는 역할을 담당
  • Serial Dispatch Queue: 한번에 한 작업만 실행시킨다.
  • Concurrent Dispatch Queue: 시작한 작업이 끝나는것을 기다리지 않고 가능한 많은 작업을 실행시킨
  • Main Dispatch Queue, 앱의 메인 스레드에서 작업을 실행할 수있는 전역에서 사용가능한 시리얼 큐
  • DispatchQueue.main: main thread queue, serial Queue로 동작한다
  • DispatchQueue.global: background thread queue. Concurrent Queue로 동작한다

댓글