Conceptually, both DispachGroup and Semaphore teams accomplish the same goal (if I do not understand something).
The above is not entirely true. You can use the semaphore to do the same thing as the sending group, but this is much more general.
, , , , , , - .
, . Apple .
, :
wait , , , - .
signal , , .
, . , , , . - , ..
, , N . N, N , , , , N . N = 1. .
. sempahore 0, - , , . , .
gotchas. , , , . , , , , . , , Dispatch . , , . , . , .
- , , - , . () , , , " " .