dispatch_group_notify
Schedules a block object to be submitted to a queue when a group of previously submitted block objects have completed.
Declaration
extern void dispatch_group_notify(dispatch_group_t group, dispatch_queue_t queue, dispatch_block_t block);Parameters
- group:
The dispatch group to observe. The group is retained by the system until the block has run to completion. This parameter cannot be
NULL. - queue:
The queue to which the supplied block is submitted when the group completes. The queue is retained by the system until the block has run to completion. This parameter cannot be
NULL. - block:
The block to submit when the group completes. This function performs a
Block_copyandBlock_releaseon behalf of the caller. This parameter cannot beNULL.
Discussion
This function schedules a notification block to be submitted to the specified queue when all blocks associated with the dispatch group have completed. If the group is empty (no block objects are associated with the dispatch group), the notification block object is submitted immediately.
When the notification block is submitted, the group is empty. The group can either be released with dispatch_release or be reused for additional block objects. See dispatch_group_async for more information.