Promises
Promises is a modern framework that provides synchronization
...To perform more than one async operation, you have to nest the second one inside the completion block of the first one, and also handle an error gracefully. Often such nesting becomes painful to follow or modify. The framework has intuitive APIs that are well documented making it painless to integrate into new or existing code. Supports both Objective-C and Swift. Promises that are created in Objective-C can be used in Swift and vice versa. Has minimum overhead that achieves similar performance to GCD and completion handlers.