샘성의 iOS 개발 일지

Global DispatchQueue 의 QoS 에는 어떤 종류가 있는지, 각각 어떤 의미인지 설명하시오. 본문

iOS/면접

Global DispatchQueue 의 QoS 에는 어떤 종류가 있는지, 각각 어떤 의미인지 설명하시오.

SamusesApple 2023. 6. 1. 15:45
728x90

 

QoS란?

  Quality of Service의 약자로, 작업에 대한 중요도에 따라 다른 퀄리티의 서비스를 사용하도록 여러 종류가 있다.

 

 

 

 

 

Global DispatchQueue 의 QoS 종류 (중요도 높은 순서 우선으로 정렬)

  1. User-Interactive: 사용자와 상호작용하는 것과 관련된 작업에 사용. UI 업데이트, 이벤트 처리처럼 사용자 경험에 직접적으로 관련있는 경우 해당 QoS를 사용한다. (중요도 1위)
  2. User-Initiated: 사용자가 직접 요청한 작업에 대한 QoS. 인터넷 검색, 파일 찾기 등, 사용자에게 즉각적인 응답을 줘야하지만 1순위보다는 우선순위가 떨어진다 (중요도 2위)
  3. Default: 개발자가 QoS를 따로 지정하지 않았을 때, 기본적으로 설정되는 QoS이다. (중요도 3위)
  4. Utility: 사용자에게 즉각적인 결과를 제공하지 않아도 될 경우 사용. 데이터 및 파일 다운로드, 네트워킹처럼 progress Indicator와 함께 실행 시간이 비교적 긴 작업에 사용된다. (중요도 낮음)
  5. Background: 사용자 눈에 보이지 않는 백그라운드 작업을 할 때 사용하는 QoS이다. 미리 데이터를 가져오거나 로컬 데이터베이스에 데이터를 저장 및 백업하는 작업처럼 속도보다는 에너지 효율이 더 중요한 작업에서 사용된다. (중요도 제일 낮음)
  6. Unspecified: 사용되지 않는 legacy API로 사용하지 않는다.
728x90