[Swift] 複雑な非同期処理が作り出すコールバック地獄とネスト地獄を解消したい! セマフォを使ったシンプルなリファクト方法を試してみた | DevelopersIO
Promissを使わなくても非同期処理を同期処理っぽくできますし、実装もシンプルになりますよ。