Why is dispatchGroup used in certain situations?
All of these answers. Reference: Apple Developer: Documentation: Dispatch: Dispatch Group
It allows multiple synchronous or asynchronous operations to run on different queues.
It allows track and control execution of multiple operations together.
It allows operations to wait for each other as desired.