Avatar
var done = (() -> Void)? func a() async { await withUnsafeContinuation { continuation in done = continuation.resume } // A } func b() { done?.() // B done = nil } こういうコードがあったときに、同一Actor上で await a(), b()の順番で呼び出した時に //B -> //A の順番で実行されるってことですね
8:20 AM
//A -> //B になっていてほしい。もしa()の処理の先にもう一個awaitがあったら、はじめてそこで//Bに帰ってくる、みたいな
8:20 AM
この辺が他の言語のyieldとかなり違うし、UI、特にアニメーションで使えないねとなる原因でもある (edited)