새소식

iOS/Swift

[Swift] DispatchQueue (3) - DispatchGroup

  • -

DispatchGroup : 하나의 단위로 모니터링할 수 있는 작업들의 그룹


- 여러 작업을 그룹에 추가하고 동일한 Queue 또는 다른 Queue에서 실행되도록 예약할 수 있음

- 그룹 내의 모든 작업이 실행 완료 후 completionHandler를 실행

- 그룹의 모든 작업이 실행 완료할 때까지 동기적(sync)으로 기다릴 수 있음

 

// 그룹 생성
let group = DispatchGroup()
// main Queue를 group에 추가
DispatchQueue.main.async(group: group){}
// group의 작업이 완료되었을 때 main Queue에 알림
group.notify(queue: DispatchQueue.main){}

 

참고


 

iOS Concurrency(동시성) 프로그래밍, 동기 비동기 처리 그리고 GCD/Operation-디스패치큐와 오퍼레이션큐의 이해

 

DispatchGroup | Apple Developer Documentation

A group of tasks that you monitor as a single unit.

developer.apple.com

 

728x90
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.