改良したものをライブラリとして公開しました。 Swiftで複数の非同期処理を扱うライブラリAsyncKitを書きました 非同期処理を並列に実行させてすべてが終わったら別の処理を行う、ということをしたいとき、GCDのgroupを使う方法があります。 ただ、毎回GCDのコードを書くのは美しくないですし、やり方を忘れてしまいがちです。 そこで新しく parallel という関数を作りました。 JavaScriptの非同期処理を扱うライブラリ "async" にあるparallel関数を参考にしています。 Quick Example parallel( [ { done in done("1") }, { done in done("2") } ]) { results in print(results) // -> [Optional(1), Optional(2)] } let process